Add support for socket.io 0.9 servers

This PR adds a keyworded argument to the websocket constructor called "support_socket_io", which will enable the handshake necessary for the socket.io server. Once the handshake with the socketio server has been completed successfully, the websocket can continue with finishing its own handshake.

For more information about socket.io, see: http://socket.io.

Note: the socket.io server implementation I've tested this patch with is the server-side implementation called "gevent-socketio" (see: https://github.com/abourget/gevent-socketio).

At this moment, this patch does not work with socket.io version 1.0. Perhaps this should be added as a warning to the documentation, but for now this works with a socket.io server which version is <1.0.