Major overhaul of the entity system

Now it allows for generic processing of entities.
e.g. You don't have to manaully draw each item