added A LOT of features, will commit more often:
	* split keyboard
	* controller
	* file parser
	etc

next step is a better class design