Renamed GameLoop to DualThreadGameLoop
Added SingleThreadGameLoop
Added ThreadSynchronizer
Made GameLoop implementation more abstract
Added support for interface querying