Add #close! method to WebSocket and HTTP connection adapters.

This provides an easy way to close a connection from within a
WebsocketRails Controller by calling connection.close!. This works
with both WebSocket connections as well as streaming HTTP connections.

This closes #99 and closes #15 as well.

As far as #15 is concerned, the pull request submitted by @imton
takes care of managing disconnects on the client side cleanly.
Granted, you still need to manually resubscribe to any events
after you reconnect. The next step will be to manage reconnects
better internally within the JavaScript client.