Fix ssh_sftp:start_channel timeout

The {timeout, Timeout} option passed to ssh_sftp:start_channel is not
applied to the early phases of the SSH protocol. For example, if the
remote server fails to respond after the "hello" then the call will hang
for as long as the server keeps the TCP connection alive.

This patch passes the Timeout through to ssh:connect. In case the
timeout occurs during these phases, {error, timeout} is returned.