Buttons can be clicked even if touchmoves are thrown

Previous behavior would suppress Button clicks if any touchmove events are thrown. Some devices are super sensitive and throw touchmove events for even slight taps. So instead, let's track movement during touchmoves and allow clicks to happen if the touch does not move very far.

Fixes #1108

Tested on Android Jellybean, Windows Surface, iPad, and desktop browsers