CDRIVER-424 Fix node selection with read preference tags

Node selection with tags is broken in the C driver for two reasons:
 - Node instances within a cluster do not have tags stored on them when they are tagged in the replica set configuration.
 - Node selection assumes a single tag set rather than array of tag sets.
Cool, I will update.