world controller now only redraws on events if those events change the state of the world