WIP/POC Implementation of JSR311

This is a POC for one approach to implementing JSR311 in Karyon.  For simplicity this code uses UriTemplate from Jersey but we could swap that out for our own implementation later.  

Key concepts introduced here.
1.  Instead of AsyncResponse (JSR315 for async servlets) methods will return an Observable<Object>
2.  A mapping layer will map the type to a message body writer
3.  Support for DI via the InjectionSPI interface.  Basic implementation for Guice is provided
4.  Encapsulate request/response/state in a RequestContext
5.  New RequestHandler contract which is essentially a map from RequestContext to Observable<Object>.  This allows us to implement the URI routing using a flatMap
6.  RouterConfigurer contract for various mechanisms to generate the routes and associated handlers.  An implementation is provided for PackagesRouterConfigurer, ClassRouterConfigurer, MethodRequestHandler

Example resources,

```java
@Path("/v1/hello")
public class HelloWorldResource {
    @GET
    @Path("{name}")
    public Observable<String> getStatus(@PathParam("name") String name) {
        return Observable.just("hello " + name);
    }
}
```

Is a race condition here? We configure the builder in the subscription which runs on RxJava scheduler thread.