Replication performance improvements

#### (#932) - Use bulk API for _revs_diff
Queue revs diff requests and and send them in bulk.

#### (#993) - Use allDocs to batch generation 1 docs
Batch fetching docs of generation 1 via `allDocs` api in replication.
* handle deleted docs correctly (they could have been deleted via POST with
`_deleted: true` without removing data)
* Handle docs, which revision has changed after change has been emitted