New module: level

level.Level bundles up the various objects required for a level of the
game, including the new classes from ecs.

Should make creating levels from plain old data easier.
General fixes to inputmanager

Improved API for accessing inputmanager.  Had to use a funny hack to
implement singleton pattern.  May reconsider this usage eventually.
main.py now uses Level class

First step in the transition to using Levels and the ecs system.
First system subclass added.

SpriteSystem allows an entity to have a sprite on-screen, with its
position tracking the entity's Position component.
Added common module with lots of useful components and subsystems
Updated functionality