1. Broke out logic of_isPointerDown to _touching and _buttons to track touches and mouse buttons separately.
2. Added utility method to the jQuery event objects we create through the polyfill called preventClick, which prevents the following click event from a pointerdown or pointerup (or similar) event, as calling preventDefault in the specification does not prevent the native click from firing.
3. Added logic to prevent chorded events on mouseups of different buttons, per the Pointer Events specification (http://www.w3.org/TR/pointerevents/#chorded-button-interactions).
4. Fixed unit tests, added more unit tests.
5. Corrected some logic around what happens when the user mixes between touch and click events.
6. Fixed "touchcancel" event, it now properly fires the "pointercancel" event again.