Reworks the entity system in order to avoid the constant allocations
caused by using trait objects.