SetChanWaitTimeout() now uses time.Duration
Handle connection timeouts properly (via SetConnectTimeout)