33513 pull replication by document id

Do pull replication with a subset of document IDs.

The user configures clientFilterDocIds on the CDTPullReplication object; this is an array of document IDs.

Internally, the sets clientFilterCurrentSetDocIds (doc IDs for inclusion during pull, for which we already have at least one rev in the database), and clientFilterNewDocIds (doc IDs for inclusion during pull, which we don't yet have in the database) are used.

Lots of things are missing right now, especially an updated remoteCheckpointDocID method whose input to the hash function should the doc ID list.
Not sure either... need to think it through, though.  If we put the doc IDs in the hash, each unique list of docIDs would create a new checkpoint doc and start replication from the beginning the first time. On the other hand, if we don't include the doc IDs, this checkpoint doc will have the same ID as a full replication for all docs which might create some gotchas depending on the intention of the developer when using this special mode.