Major changes to the immutant.web library

* The immutant.web.servlet ns is gone
* Ring handlers become Servlets in-container and HttpHandlers
  out-of-container
* Websockets become JSR-356 Endpoints in-container and HttpHandlers
  out-of-container
* Session middleware is now explicit and the
  immutant.web.middleware/wrap-session middleware will use either
  Servlet HttpSessions in-container or Undertow Sessions
  out-of-container.
* The extent to which a websocket may "share" its associated Ring
  handler's session is limited to a read-only view available via the
  Handshake arg passed to :on-open

I still need to re-organize the tests better. I'd like both servlets and
undertow handlers to go through identical tests eventually, but I ran
into a snag with invalidation of the undertow sessions.