Fixed: SocksServer struct not properly initialized
Fixed: connectionQueue should be buffered so it can be filled immediately
Fixed: Tunnel struct was not fully initialized
use an explicit channel to signal workers to stop as soon as a connection is established; distinguish explicitly closed (cancelled) tunnels for logging
was missing Grant() step in sock proxy connection handler
log selected protocol
ensure that only one tunnel is sent to firstEstablishedTunnel
refactored runTunnel and tunnel to use less shared memory and more resemble an idiomatic Go processing pipeline; refactored conn to support an explicit, synchronized interruption list and cleanup race conditions related to unsynced access to shared memory
Merge pull request #3 from rod-hynes/master

Bug fixes and refactored tunnel establishment pipeline