Implemented injectable router

* Replaced Routes.setPrefix with Routes.withPrefix
* Created RoutesPrefix so that there was no direct dependency from the
  reverse router to the forwards router
* Applied RoutesPrefix object change to old static router
* Created new injected forwards router
* Implemented abstraction in the sbt plugin that allows selecting a
  routes generator
* Copied existing routes-compilation scripted test to new
  injected-routes-compilation scripted test that uses injected routers