Added UrlHelper extensions and unit tests

This is the correct PR to use instead of #22.  

I took the gist provided by @jbogard in #21 and turned it into this PR. I put the extensions into the same namespace used by the other extensions, also added an overload that takes an ````IRouteDispatcher````, wasn't sure if that was desirable or not. I did add some unit tests, most of which rely on ````RouteLinker's```` functionality being correct and simply comparing the results of ````UrlHelper.Link<>```` to the output of ````RouteLinker.GetUri````. I can add more tests or otherwise make any other changes that might be necessary.