Updated API of CBLRevision

…plus some side effects on CBLAttachment and CBLModel.
Updated the rest of the CBLAttachment API.
Updated API of CBLManager
Updated CBLDatabase API
More CBLRevision API updates

* Moved -revisionHistory: up to CBLRevision
* Made CBLNewRevision.userProperties settable.
Updated CBLDocument API

No changes from the API spec. But I did make some changes:
* Renamed -tdDocumentChanged: to -CBLDocument:didChange:.
* .modelObject now must conform to the CBLDocumentModel protocol
* kCBLDocumentChangeNotification now includes a CBLDatabaseChange object
* Cleaned up some formatting and edited some doc-comments
Updated CBLQuery (etc.) API
Updated CBLReplication API