We carefully tune our reconnect timeouts in the calling function (10 or 1 second) but I think `connect` is infinitely blocking (so it will timeout after ~60 seconds in the failure case).  Seems pretty contradictory.