Adding attribute routing

Adds a rough cut of attribute routing for URL matching (incoming requests only).
Move this closer to where it's first used.