Add the ability to set a custom HttpControllerSelector

In one of my projects I need to use a custom HttpControllerSelector to avoid name collisions between api controllers.This change enables users to set the selector if they are using a custom one.

To use, call the following before doing any asserts:
` RouteAssert.UseHttpControllerSelector(typeof(MyCustomHttpControllerSelector));`

If you dont set it, it will use the standard DefaultHttpControllerSelector.