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

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

Adds CDTReplicatorFactory -oneWay:(CDTAbstractReplicaiton *):error(NSError**),
which accepts a CDTAbstractReplication object to specify the replication.
This method returns a CDTReplicator, which may be used to execute the
replication (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 remote filter function.

Tests (and supporting methods) were added to the ReplicationAcceptance
project and to CDTReplicationTests.m in the Tests project.

Updates the documentation README.md and replication.md to instruct use of the new
CDTReplicatorFactor -oneWay:error: method.