Major refactoring, first working version of game