Https proxy

Previously the timeout was set on the the connection too late in the process.
This change passes through the timeout value to _new_conn so it's set for proxy
connection attempts.

Not too happy with the interface change though and open to suggestions.
Maybe call this `_prepare_proxy(self, conn)`?