Added an implementation of get responsible shards and edge shards, using the original collections on single server and falling back to ClusterInfo on cluster