Crash when connection denied or times out: Closes #7634
Previously ClientSession.connect_async() could leave the object in a LOGGED_OUT state if the connection was denied by the server or a timeout occurred when connecting. This was bad because that state indicates that the underlying connection may still be active and needs an async close to occur. Now connect_async() guarantees that the connection is closed/disconnected/dead if it throws an Error.
Showing with 16 additions and 2 deletions