Implemented Single threaded Dispatcher,wrote test cases

I've implemented single thread dispatcher. If this is correct then I'll update it to concurrent version which I've started. I just wanted to confirm my approach.
From a single responsibility principle perspective, this function really does too much stuff.
Specifically - 
1. Parse and create request.
2. Create a mapper and configure it.
3. Handle the discovery of the request handler based on the request.
4. Queue the request and manage the queue.
I thing you should delegate some stuff our to other components.