Moves the TD_FilterBlock from TD_Database to TDPusher.

Previously, a TD_Database managed all filters associated with that
database in a local NSMutableDictionary. This has been removed and
now the TDPusher class holds a copy of the block which defines the
filter.

These changes are reflected in the CDT* level classes.

*filterId is removed from CDTPushReplication
*CDTReplicator is now initialized with an instance of an
CDTAbstractReplication class instead of its NSDictionary representation.
(This doesn't affect the API since this is a 'private' instantiation method.)
*CDTReplicator maintains a copy of a CDTFilterBlock
*CDTReplicatorFactory -oneWay was modified accordingly.
Merge pull request #42 from cloudant/32553-move-TD_FilterBlock-to-TDPusher

Moves the TD_FilterBlock from TD_Database to TDPusher.
Changes the CDTReplicator.state property to be equal to CDTReplicatorStatusStopped
if the replication was stopped via a call to CDTReplicator -stop. Otherwise, if
the replication stops on its own because it completes, the status is set to
CDTReplicatorStatusComplete.

In addition, the CDTReplicator code was changed to clarify the object's state,
progress (changesTotal and changesProcessed), and messages sent to delegates
during start, stop and updates to the replicator.