Support game controllers

Initially just D-Pad and buttons.

Tested with:
* Xbox 360 Wireless Controller for Windows
* Sony PS3 Sixaxis
* Sony PS4 DualShock 4
Support left thumbstick
Merge pull request #1 from eagleflo/controller-support

Controller support
Move constants
Poor man's vsync