changed ReadPreference and ReplicaSetTagSet and ReplicaSetTag back to the way they were originally.
adding copyright, doc comments, and argument checking.