improve logic around selecting a secondary from a replica set for backup, give preference to hidden members