Refactoring

Finally starting to use interfaces
Minor Refactoring

Could not fully abide to the SRP.  Wasn't quite sure how to remove
GameWorld's dependency on PlayerHuman.  Having PlayerHuman update itself
based on GameSpheres state would instead create a dependency between
PlayerHuman and GameSpheres.  May consider using interfaces to utilize
the DIP.