Fix CLUSTERDOWN when request to a node which quits the cluster

After a node migrates all slots it owns and quits the cluster, a 'CLUSTERDOWN' error possibly appears that an operation on key in the slot which was owned by that node. RedisCluster should recover under the circumstance.

By the way, I found the `refresh_table_asap` attribute is somewhat hard to trace. In my test case, its value mutated between this 2 `get` calls

```
# L318
conn_b.send_command('set', 'h-893', 'I am in slot 0')

# L319
assert b'I am in slot 0' == rc.get('h-893')

# self.refresh_table_asap is True

# L320
assert b'bar' == rc.get('foo')

# self.refresh_table_asap is False
```

As a result if L320 is removed the test won't pass, because `refresh_table_asap` is `True`, and therefore the last `get` (L333) would fix the slots mapping.

Do you have any plans about refactoring the error recovering in `send_cluster_command`? May I help with that?