Tests for issue couchbase-lite-java-core #224

The testConcurrentChangeTrackers() reproduces the issue of concurrent change trackers when calling multiple times without any time interval the goOnline() method.
The testConcurrentChangeTrackersWithStateControl() demonstrates that if we wait for the replicator status to change to IDLE after calling goOnline() we can call goOnline() as many times as we want without creating new concurrent change trackers threads.

I didn't use the MockServer as it tricky to test continuous replications this way. If the replication is continuous the changes feed is constantly being requested  and ends up receiving a 406(not acceptable).