Making UrlHelper's methods virtual

/cc: @rynowak @yishaigalatzer 
What's interesting here is that if you subclass UrlHelper, it's not easy for you to directly interact with routing. You end up calling base.Action(), and maybe that's ok.