Adds support for filtered push replication.

This commit adds support for filtered push replication via the CDTPushReplication
interface. A developer supplies the definition of the filter via a CDTFilterBlock,
and the query parameters via a NSDictionary.

* Adds CDTPushReplication -filter and -filterParams.
* Modifies CDTReplicationFactory -oneWay:error: to wrap the CDTFilterBlock
inside a TD_FilterBlock and into the source TD_Database so that TDPusher finds
the filter during replication.
* Adds tests in Tests project DatastoreCrud.m and CDTReplicationTests.m.
* Adds tests in ReplicationAcceptance project.
* Improves some documentation in CDTPullReplication and matches that in CDTPushReplication.
Do you think a developer may way want to set the _id for a replication? 

I posted a further comment related to this question here: https://cloudant.fogbugz.com/f/cases/32224/Removing-the-_replicator-database