Buff input

Resolves #15 - Added support for Events
Resolves #16 - Added support for InputEvents. Input events are now mapped to Keyboard presses.
Resolves #26 - Added support for InputEvent to be tied into Mouse events.