BinaryShardedJedis.disconnect() may occur memory leak

Scenario:
When the middle node of cluster goes down, BinaryShardedJedis.disconnect() will unable to release connections of the following nodes, this causes memory leak.

Solution:
Ignore the exception node, so that all other normal nodes can release all connections.

This pull request adds a unit test for this solution.
Thanks to @marcosnils's guide.
Jedis determines broken state by handling JedisConnectionException internally, so if it was just disconnected, isBroken() could be false.
It would be up to what exception did it occur, so we may have to check it again by not handling Exception and just handle JedisConnectionException.