* Refactor Scheduler to decouple from Core and avoid races * Make SchedulerItem private class, clean headers * Fix GetDebugTimer * Clean up the unit test * Extract method for initializing scheduler, formatting * Hide boolean parameters, clean up the Scheduler interface * Style + formatting * Dont's at the and of the comments, remove redundant comment