GameObject class -- abstracted for simplification of Player and Pickup

Basically made a class that Player and Pickup can inherit stuff from.
Much cleaner. Also means that we can add other game objects that act
similarly, but don't have exactly the same properties as a player or a
pickup (like an obstacle)