Branch/wss on 443

The logic inside `io.connect` really expects it to pass it an `http` or `https` url and it will handle it from there.  We passed it `ws` and `wss` urls which it isn't 100% prepared to handle.  It mostly works, but some of the logic for choosing ports and security checks to see if the protocol is `https`.

@davideaster would you mind reviewing?