Move joypad functionality into its own class