reuse of pre- and post-step event objects in World
changed world reference to this in World
only compute gravity norm once in World.step()