Reconnect to discoverd when the connection drops

I think this needs to be the same client that failed (passed in as an arg), otherwise it could race with another reconnect.