Renamed Queue method to Enqueue
Added AsyncQuery
Marked classes sealed
Added asynchronous handler dispatcher, which uses queue for dispatching.
Added Counter synchronization primitive, which is signaled when 0.
Removed dispatching responsibility from AsyncQuery by using AsyncHandlerDispatcher
Added async command handler
Using Counter in handler scheduler as CountdownLatch does not work as expected
Made asynchronous dispatching of user commands and queries. Commands execute exclusively and serially, while queries are executed simultaneously.
Cleanup
Made classes sealed