Spiked out route metadata prototype
Cleaned up the code a bit
Additional changes

- Introduced RouteMetadata and replaced the IDictionary<Type, string>
in RouteDescription.Metadata with it
- Made it possible to have multiple IRouteMetadataProviders
- Updated sample
Additional updates
Added Retrieve ext. method to IRouteCache
Renamed Retrieve<TMetadata> to RetrieveMetadata<TMetadata>
Fixed merge errors and a failing test
Changed incorrect method name
Fixed silly copy/paste error
Resolved merge conflict
Merge pull request #1497 from thecodejunkie/route-metadata

Added support for route metadata
Added generic route metadata provider

Conflicts:
	src/Nancy.Testing/ConfigurableBootstrapper.cs
Added missing XML docs
Merge pull request #1509 from khellang/frickin-generic-metadata-provider

Frickin generic metadata provider
Initial working spike of named routes
Added name to diagnostics