Rescue from all connection-related errors when trying to reconnect (also...

... includes TimeoutError and CannotConnectError).

Is there a compelling reason to not rescue from TimeoutError or CannotConnectError.
If there was an existing connection and that dropped the first exception is a ConnectionError from which the retry-logic will recover. But since there's no connection anymore upon the next retry it will be a CannotConnectError, which is not rescued from.  This means, in case the connection drops there is only one retry-attempt possible.