When there's a tap the swipe event is fired on Nokia Symbian and Playbook tablet devices (this should not be the case since this is just a tap and not a swipe).  Instead of checking if x2 and y2 are > 0, just checking to see if they are defined fixes this issue.  Also re-factored the code a bit by moving the delta comparison in the conditional check. This has been tested on Playbook, Nokia Symbian, iPad and iPhone devices.
When there's a tap, the swipe event is fired on Nokia Symbian and Playbook tablet devices (this should not be the case since this is just a tap and not a swipe). It seems that there is a slight move when tap event is fired on these devices, so touch.x2 and touch.y2 get set. But because the delta comparison Math.abs(touch.x1 - touch.x2) > 30) and Math.abs(touch.y1 - touch.y2) > 30) are inside the conditional block that checks if touch.x2 or touch.y2 > 0, the last conditional else if ('last' in touch) is never reached. Moving the delta comparison in the conditional check fixes this issue. This has been tested on Playbook, Nokia Symbian, iPad and iPhone devices
Set relevant transition props instead of 'all'
Cancelled longTap timeout if touchmove is detected
Expect $(domElement1, domElement2) to return [domElement1] like jQuery.
remove trailing semicolons in core
more purging
no one escapes the austrian inquisition
add semicolon-less rules
be nice
remove closure compiler and yui compressor, go uglifyjs
remove semicolons in tests
remove semicolons from examples
stylistic fixes
more cleanups to make code more delectable
some more little cleanups
calling val() on non existent element should return undefined
extend should not copy over undefined values
Merge pull request #457 from i8ramin/val-undefined

calling val() on non existent element should return undefined
Merge pull request #458 from i8ramin/extend-undefined

extend should not copy over undefined values