Discovery: If not enough possible masters are found, but there are masters to ping then these nodes should be resolved

After the findMaster() call we try to connect to the node and if it isn't the master we start looking for a new master via pinging again.

Note this PR is for the improve_zen branch.
a comment about why we do this?