Add missing dependencies to custom route helpers

The polymorphic url router methods are not always available in the
places where these custom url helpers are used (e.g. controller tests).
This adds the methods as an explicitly dependency at the point they are
used.
Get rid of more unnecessary request futzing
Tidy up mixing-in of routing helpers

Our custom routing helpers can be mixed into the base
ActionController::TestCase class, making them available in all
controller tests.