Async support!

* Added -[CBLManager asyncTellDatabaseNamed:to:].
* Added -[CBLQuery runAsync:].
* CBLLiveQuery now runs its query asynchronously in the background.
* CBLLiveQuery.rows returns nil initially (as documented), before the background query completes.
* Added -start and -stop to CBLLiveQuery.
* Fixed: CBLLiveQuery was notifying that its .rows changed even if the result of the query didn't change.
* Added CBLQueryEnumerator.error (for use with async queries.)
* kCBLStaleUpdateAfter is now implemented.
* Fixed: CBLQueryEnumerator.sequenceNumber wasn't being set.
* CBLQueryRow uses less memory (parsed versions of .key and .value are now weak.)
* More unit tests of CBLQuery.
* 'Query' logging key logs info about running async and live queries.
* Logging now writes a double-bar instead of a "|" after the timestamp if the message is from a background thread.