RouteSet should be in charge of constructing the dispather

Now we can override how requests are dispatched in the routeset object