refactored so only gameengine uses instrumenter class