…o handle mongos failover. Refactored ReplicaSetStatus and MongosStatus to share a common base class ConnectionStatus. Added DynamicConnectionStatus class to handle dynamic discovery of whether a list of seed nodes represents a bunch of mongos servers or a replicaset. Is uses ExecutorService to handle multiple threads that communicate with each member of the seed list. Changed DBTCPConnection to depend on DynamicConnectionStatus insteand of ReplicaSetStatus.