Issue #224 - initial implementation effort.

1. add android implementation classes
2. update replicator to listen for network changes

https://github.com/couchbase/couchbase-lite-android/issues/224
Issue #224 - use synchronized keyword rather than synchronized block

https://github.com/couchbase/couchbase-lite-android/issues/224