Minor Snowflake code quality improvements
More minor changes I made while working on integrating turbo tunnel code.
- initialize a global variable only once
- apply naming conventions to the
websocketconn.Newreturn a pointer, to directly satisfy the
io.ReadWriteCloserinterface without needing
- allow more than one simultaneous SOCKS request in the client (tor never uses more than one, but it's how the example code and all other pluggable transport clients work)