27990 Filtered Pull Replication (step two)


Add filtered pull replication

- Add class "Filter" add "filter" field in class "PullReplication".
- Add filtered replication support to "BasicPullStrategy". Now
developer can create a filterd replication by adding a filter
to "PullReplication" when call "ReplicatorFactory.oneway(PullReplication)".
- Add tests. It worths pointing out how the tests are
implemented: a) Create a db called "animalDB",
(see fixture/animaldb_animal*.json for documents), which also includes
predefined filters (see fixture/animaldb/animaldb_filter.json),
b) filtered pull replication c) check the replicated documents

----
Please review https://github.com/cloudant/sync-android/pulls 
first, and the first two commits of current PR is included there.