System refactor

Added Entities as a Class.
Changed EntitySystems to work on lists of Entities whose ComponentTypes match those that it is interested in.