Add separate event handler for touchcancel/touchleave
Now I've separated the handlers for touchcancel / touchleave, because in previous commit I've attached the touchEnd handler, but that wasn't correct - when touchcancel/touchleave is triggered, tap event must not fire.