more robust engine

allowed objects to disable input, update, or render in the gameloop