New simplified design

* Draw coordinates should be computed manually using window back-end
* Separating state from button
* One enum for buttons
* Another enum for motion, which can be easily extended to gamepads or
tracking devices
* Added text input

Closes https://github.com/PistonDevelopers/input/issues/35
Closes https://github.com/PistonDevelopers/input/issues/34