Broke Level-Entity circular reference, EntityCreator is now separate

EntityCreator is now outside of Level, although it reads from its XMLDoc
and pushes its entities into it.

This was so that the Level-Entity circular reference could be broken.
Now Level knows nothing specific about the entities other than having a
list of them.

Makefiles and project setups were updated accordingly