Tidy HTTP slightly

Also hopefully prevent some bugs with Sockets and copy construction / deletion.
Must manually call Socket::Close now.
Need to convert WebSocket back to TCP on error

You can do HTTP if you don't actually get a WebSocket handshake
by calling the HTTP functions on WS::Socket::TCP()

Example in wsserver (corrected from before which would just give the browser websocket gibberish).