add state machine for world
bit of pointerlock