Propagate change notifications between multiple DB objects on the same physical database

In multi-threaded environment, there will be multiple CBLDatabase instances on the same database.
They need to notify each other when they make changes. For example, a background instance run by
the router will make changes due to REST API requests, which need to be relayed to the foreground
db so the UI can be updated.
This used to be implemented but broke during refactoring. Once I fixed that, I found it had problems
anyway, so I fixed those.
Fixes #15.
Minor changes

* Write a link-map file.
* Updated a comment.