First working version of the input subsystem

* the input system has two method types:
	* real time data (is the key pressed right now?)
	* event driven data (has the key been pressed?)
* the win32 GameWindow now catches the most important messages and turns them into Input::Events
* the KeyCodes are reworked so they are now enums instead of explicit data types