Entity Component System TODO: callback after creating a component, eg: void callback (GameWorld & world, Component * c)