Adds support for filtered pull replication and reorganizes the
way replications are specified and initiated.

Adds CDTReplication, CDTPushReplication and CDTPullReplication, which
are used to encapsulate the data necessary to start a replication. CDTReplication
is an "abstract" base class for CDTPushReplication and CDTPullReplication.

Adds CDTReplicatorFactory -oneWay:(CDTReplicaiton *), which accepts
a CDTReplication object to specify the replication. This method returns a
CDTReplicator, which actually begins the execution of the replication when called
(CDTReplicator -start).

CDTReplicatorFactory -onewaySourceDatatore:targetURI and -onewaySoureURI:targetDatatore
will soon be deprecated in favor of -oneWay, which is documented in this commit.

CDTPullReplication supports filtered replication from the remote server.

This code does not make any query to the remote server to
ensure the existence of the filter function. (Perhaps this should be
done?)

A test (and supporting methods) was added to the ReplicationAcceptance
project.