Configurable connect timeout

cc @tmm1
Do we want the same coercion protocol around `connect_timeout`?