Endpoint

Implement named endpoints for UrlDispatcher.

Please review.
The PR has full endpoint support for UrlDispacher, concept can be extended on traversal routing without breaking existing contracts.
@kxepal if we like to use the same `AbstractRouter` ABC for traversal `.resolve()` and `.reverse()` may be coroutines that uses, say, database calls.