CDRIVER-424 filter out non-matching nodes before those that are far

We should filter out the nodes that do not match the read preference criteria before those that are farther than acceptable latency ms behind nearest.