Consolidate flags into one place
Refactor to use LocatedEntity as base class

All IG code should use the interface of LocatedEntity when dealing
with any entity, rather than sometimes requiring Entity. Add virtual
functions to the interface where required, and modify all other interfaces
to stop them using Entity. This makes the code way cleaner, and much better
de-coupled.
Update todo state
Clean up MemMap unit test.
Cover some more cases
Initialise type of BaseMind on construction

MemMap assumess all entities in the map have a type pointer, and
that it will be pointed at m_entity_type if it is not set to its
proper value yet.
Make absolutely sure map entities have type
Cover some important parts of MemMap
A note
Remove long disused code.
Cover findByLoc
Use LocatedEntity to avoid dynamic cast
Rename container typedef to match contained
Remove obsolete dynamic cast
Update TODO list
Remove unneeded Entity.h include
Remove unused Container.h include
Remove unneeded Entity.h include
Remove unneeded Entity.h include
Remove unneeded Entity.h include