IMO we should deprecate using the URL to choose the page type, preferring to look at the type of the page object, if it exists.

Or alternately, start using route listeners.