Tell presenter to prepare after matching, not before routing

Since request.route_path is set when a route is matched, presenter was
never seeing this and was instead using the request path. So, routes
with args weren't being collapsed resulting in incorrect view_paths
being set.

Solved by passing an after_match block to Router#perform (previously
route!) that executes the stack for after match.

Also did a bit of additional refactoring regarding routing names.