Another performance improvement by using park/unpark
Just commiting this obvious improvement while I am working on a larger restructure
No performance improvements (besides re-applying the schedule queue buffer)
Instead this commit works around some of the code complexity, trying to make the dependence between PriorityScheduler and now called QueueManager (previously TaskConsumer) more explicit.  This also reduced some code duplication.
Deprecated ConsumerIterator and added missing javadocs
Added unit tests around PriorityScheduler.QueueManager inner class
This probably had code coverage before, but I wanted to make sure it was all independently tested as well.
Added one more small unit test