Abstracted the game controller