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 package
  • make websocketconn.New return a pointer, to directly satisfy the io.ReadWriteCloser interface 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)