Entity.update() now returns a new updated self. A new world is constructed each frame from these new entities.