specify named routes and track urls for each on the server

This adds the (optional) ability to name routes as you define them.
A `Url` will be stored on the server for each named route.

This url object will be eventually used to generate route strings
given a route's name and some optional route data.