Is it a problem that `mongo_read_preference_dtor()` will `free(rp->tagsets)`? In that case, we're freeing a null pointer, which should be a NOOP according to http://stackoverflow.com/a/1938758/162228.