only do reconnect when opening connections

sometimes a request will cause the client connection to be terminated
and in this case all subsequent requests will fail even if the
client connection is reopened.  open connection needs to be called
first and when it is we need to make sure socket is open

Change-Id: I89336c6b12a50c2c6a1deac19802150d5b60276b