Performance issues were introduced recently because of a queued tasks counter. This changes removes the queued task counter, changes the signatures of Dispatcher.shutdown and halt to return void, and makes another performance tweak by caching an unmodifiable List rather than returning a new one on every call to CachingRegistry.select().