decoupled map updates from ecs