Made Scheduler an abstract base, old Scheduler is now SillyScheduler. Tried a different type of scheduler; it sucked, so I'm not including it here.