Expand the "connection dropped" conditions in replicaset.IsReady.

io.EOF isn't the only marker that the connection was dropped due to replica set activity.  So we also check for the other two conditions that we've seen. This is a relatively low-priority change since the consequence is effectively the same for the current consumer of IsReady (backups).  However, it makes the behavior of IsReady more consistent with expectations and results in a more meaningful error message in backups.