INTEXT-24 Lightweight WebSocket Server

* Add Lightweight WebSocket Server Support
* Run WebSocketServerTests and open ws.html in a browser.
  - Sending 'start' begins sending an incrementing # once per second.
  - 'stop' stops the stream (leaving the socket open), 'start' resumes again.
  - Test terminates after 60 seconds.
* Fixes and Improvements for WebSocket Server
  - fix masking
  - fix bytes sent
  - add error handling to remove dead sockets
  - create new web page instead of using vert.x example
  - add status box
  - automatically update message to send to start/stop appropriately
  - update SI to 2.2.0.RELEASE
  - change test to a main()
* Use Interceptor for Handshake
* Move handshake to an interceptor instead of doing it in the SI flow.
* Add close button to web page.
* Add code to remove state from deserializer on close.
* Implement Orderly Close Per RFC6455
* Rename Packages - org.springframework.integration.x.*
* Change Version to 0.1.0.
* Autbahn Test Suite - All Tests Pass
  - 1.1.x tests from the Autobahn Test Suite.
  - Autobahn 1.2.x Tests (Binary)
  - Autobahn Test 2.* (Ping/Pong)
  - Autobahn Tests 3.* (Reserved Bits)
  - Autobahn Tests 4.* (Invalid Opcodes)
  - Autobahn 5.* (Fragmentation)
  - Autobahn 6.* (UTF-8 Handling)
  - Autobahn Tests 7.* (Close Handling)
* "non-strict" results - fast fail on bad UTF-8. We currently don't detect the bad UTF-8 until all fragments are received.
* Run AutobahnTests.java and add the following to fuzzingclient.json...

    {"agent": "SIServer", "url": "ws://localhost:18080", "options": {"version": 18}}

* Remove sysout
* Replace with logger.debug().
* Remove SockJS Dependencies
  - Project started as a SockJS client; WebSocket classes were incorrectly dependent on some SockJS code.
* Extracted the WebSocket code to its own class hierarchy.
* Test Autobahn with SSL (wss://...)
  - Add trust store and key store.
  - Add config to listen for wss: as well as ws: connections
* To test Autobahn for both ws and wss - In the wstest config file use:

    "servers": [
        {"agent": "SIServer", "url": "ws://localhost:18080", "options": {"version": 18}},
        {"agent": "SIServerSSL", "url": "wss://localhost:28080", "options": {"version": 18}}
              ],

* Polishing + Resequence when Using NIO
  - Improve debug logging
  - Clear fragments
  - Add ResequencingMessageHandler to resequence messages when using NIO (frames can arrive on different threads, out of order; this causes issues with the Autobahn tests.
* Reject Non WS Connections
  - only apply Resequencer if NIO Connection factory is configured with apply-sequence.
  - check protocol version - only 13 is supported.
Merge pull request #17 from garyrussell/INTEXT-24

* garyrussell-INTEXT-24:
  INTEXT-24 Lightweight WebSocket Server
INTEXT-30 - Add SMPP Support
- migrate old sandbox project
- add schema for channel adapters and gateways
- change some package structure based on spring integration module package structure
INTEXT-30 - Add SMPP Support
- update to version 2.2.0.BUILD-SNAPSHOT
Change group id
INTEXT-30 - Cleanup
Merge pull request #16 from otnateos/INTEXT-30

* otnateos-INTEXT-30:
  INTEXT-30 - Cleanup
  Change group id
  INTEXT-30 - Add SMPP Support - update to version 2.2.0.BUILD-SNAPSHOT
  INTEXT-30 - Add SMPP Support - migrate old sandbox project - add schema for channel adapters and gateways - change some package structure based on spring integration module package structure
INTEXT-33 Add Path and QueryString Headers

Capture the URI path and query string and provide in message
headers for each message received on a web socket.

Fix tests package name.
Merge pull request #18 from garyrussell/INTEXT-33

* INTEXT-33: Add Path and QueryString Headers
Add WebSocket Events

Building on TCP Event publishing in S.I. 3.0, add events
for 'HANDSHAKE_COMPLETE' and 'WEBSOCKET_CLOSED'.

Update DemoService to consume these events.

Change ws.html demo so that the service is started immediately
and the 'command' box is now prefilled with 'stop'.

When closing the websocket, the DemoService immediately
removes the connection from its map, rather than waiting for
an exception on the write.
Merge pull request #19 from garyrussell/INTEXT-33

* INTEXT-33:
  Add WebSocket Events
Fix WebSocketEvent getter Visibility

protected instead of public