1.  Changed MidiDriver to immediately insert tasks into the Kernel from the OS callback
2.  RealTimeQueue has new "SkipTest" so it knows to skip tasks that are not ready and only return the first task that is ReadyToRun
CPU times is now 0% without the clock running, 5% with clock on (should improve when converted to kernel task)