Allow use of pre-existing connection

For example, behind a corporate proxy, you might use the tunnel npm
module to create a connection that's tunneled through the proxy.