Update setLastSequence to use checkpointId rather than remote URL

https://github.com/couchbase/couchbase-lite-java-core/issues/58#issuecomment-35457562
Issue #58 - add clearDBRef() and modify fetchRemoteCheckoint to have behavior similar to that on iOS

https://github.com/couchbase/couchbase-lite-java-core/issues/58
Issue #58 - changeTracker might be null, depending on how quickly one calls goOffline() after kicking off replicator, so check for null first.  It's a race condition.

https://github.com/couchbase/couchbase-lite-java-core/issues/58
Issue #58 - add updateActive() and setError() methods, and use them when appropriate to match iOS behavior.  Also change a call from batcher.flush() to batcher.clear().

https://github.com/couchbase/couchbase-lite-java-core/issues/58
Issue #58 - provide a way to check if the database is open (internal use only)

https://github.com/couchbase/couchbase-lite-java-core/issues/58
Issue #58 - only run query if the database is still open.  This avoids cryptic "attempt to re-open an already-closed object" errors in the logs.

https://github.com/couchbase/couchbase-lite-java-core/issues/58#issuecomment-35568540
If the database is not open, do not attempt to run a replication.  (as is done in iOS code)
Add support for publishing Source Jars
Issue #58 - was not calling asyncTaskStarted() and asyncTaskFinished() when making remote request to create a remote DB.  Needed for testPusher() to pass w/o having any exceptions.

https://github.com/couchbase/couchbase-lite-java-core/issues/58#issuecomment-35568540
Issue #58 - stop any remote requests currently in flight when calling stop() or goOffline(), matches iOS behavior.

https://github.com/couchbase/couchbase-lite-java-core/issues/58
Issue #58 - add a docchange.toString() method

https://github.com/couchbase/couchbase-lite-java-core/issues/58
Issue #85 - blobstore mkdirs() issue fix.

https://github.com/couchbase/couchbase-lite-java-core/issues/85
Add log to print cblite version
Issue #84 - fix by running the update() async.

https://github.com/couchbase/couchbase-lite-java-core/issues/84
Issue #86 - fix issue by porting functionality from iOS

https://github.com/couchbase/couchbase-lite-java-core/issues/86
Call asyncTaskFinished() inside of finally clause, otherwise the replicator could get wedged.
Issue #145 reopened - fix for "pruneRevsToMaxDepth method is always called with 0 as the max rev tree depth instead of using the value previously defined"

https://github.com/couchbase/couchbase-lite-android/issues/145#issuecomment-35486969
Merge pull request #83 from yaronyg/issue36

Add support for publishing Source Jars
Issue #87 - Please remove buildscript clause from build.gradle

https://github.com/couchbase/couchbase-lite-java-core/issues/87
Add exception handling so that replicator will log error in this case.