RFC: Use @Path and @GET/@PUT/@POST for annotation router

This is an implementation based on our discussion.  It implements JAX-RS-style (don't cry) routing support for both the Controller and Controller Methods.  It removes the former `@Route` annotation.

This supports mode-limited routes.  Multiple modes can be specified for a route via the `@Dev`, `@Prod`, and `@Test` annotations.

This PR does NOT support route ordering - which I have decided may still be important for things like my Swagger module.  I still am thinking that RegEx routes do not belong here; those should be non-annotated only.

I also tweaked the  `AnnotationRouter` to implement the `ApplicationRoutes` interface - this is the same design seen in the `CasinoRouter`.

I think this moves the `AnnotationRouter` forward, but Darren should review.
Have you tried to create your own mode?  I'm not sure it works like you expect.  The mode is tied to an enum.  If you create an mode named "james" you end up running in "prod" anyway.  At least that was my finding.