Fix CBLPuller crash
Fix CBLPuller crash

If a permanent error occurrs during bulk downloading, the completion block will get called twice, one from the error itself and the other one from cancelling the request when setting the error (strongSelf.error == error).

To prevent the above to happen, move the removeRequest to the top of the block so that the request will not get cancelled.

#613

lordkev/couchbase-lite-ios,gotmyjobs/couchbase-lite-ios,couchbase/couchbase-lite-ios,alfared/couchbase-lite-ios,macoscope/couchbase-lite-ios,pellekrogholt/couchbase-lite-ios,couchbase/couchbase-lite-ios,lordkev/couchbase-lite-ios,brendand/couchbase-lite-ios,lordkev/couchbase-lite-ios,couchbase/couchbase-lite-ios,gotmyjobs/couchbase-lite-ios,Chavenay/couchbase-lite-ios,ipmobiletech/couchbase-lite-ios,amco/couchbase-lite-ios,pellekrogholt/couchbase-lite-ios,tomco/couchbase-lite-ios,tomco/couchbase-lite-ios,brendand/couchbase-lite-ios,macoscope/couchbase-lite-ios,couchbase/couchbase-lite-ios,amco/couchbase-lite-ios,amco/couchbase-lite-ios,lordkev/couchbase-lite-ios,pegli/couchbase-lite-ios,brendand/couchbase-lite-ios,gotmyjobs/couchbase-lite-ios,brendand/couchbase-lite-ios,pegli/couchbase-lite-ios,pegli/couchbase-lite-ios,tomco/couchbase-lite-ios,Chavenay/couchbase-lite-ios,pellekrogholt/couchbase-lite-ios,pellekrogholt/couchbase-lite-ios,alfared/couchbase-lite-ios,macoscope/couchbase-lite-ios,ipmobiletech/couchbase-lite-ios,gotmyjobs/couchbase-lite-ios,ipmobiletech/couchbase-lite-ios,tomco/couchbase-lite-ios,amco/couchbase-lite-ios,alfared/couchbase-lite-ios,amco/couchbase-lite-ios,brendand/couchbase-lite-ios,amco/couchbase-lite-ios,Chavenay/couchbase-lite-ios,alfared/couchbase-lite-ios,couchbase/couchbase-lite-ios,macoscope/couchbase-lite-ios,pegli/couchbase-lite-ios,couchbase/couchbase-lite-ios,ipmobiletech/couchbase-lite-ios,amco/couchbase-lite-ios