Send correct revisions in incremental update of _changes feed

When a TDRouter serving a _changes feed gets notified of a new revision in the database,
it now handles branchy rev trees properly. If the change doesn't affect the current 'winning'
revision, it doesn't emit it. If it does, it sends the new winning revision (which may not be the
same as the new revision, if the new one is a delete.)
This is part of #152 and may have something to do with #150.
Return "reason":"deleted" in response to GET of deleted doc

CouchCocoa actually depends on this, to be able to tell a deleted document
apart from a nonexistent one -- look at -[CouchRevision initWithOperation:].
Fixes #151
Fix a leak when adding an attachment to a revision.
Updated the README
Update version to 0.952
Better fix for _changes feed

The previous fix for #152 (03e4dcd) didn't produce the right results when a new deletion was added
to an already-deleted document; this one does. It's also more efficient, and can pretty easily be
improved post-1.0 to cache the current winning revID in the 'docs' row.
Fixed some static-analyzer issues

Nothing serious; mostly just no-op changes to get it to be quiet.
More Obj-C subscripting syntax conversion
Added ability to open server read-only or without replicator

This is for TouchDB Viewer, but others might have a use for it too.
Support new read-only option in TouchServ
Handle 'missing' revisions more compatibly

* Non-leaf revs pulled from another db should be marked as missing (json=null) not just empty.
* _revs_info should show status "missing" for missing revs.
* GETting a missing revision should return 404, not 200 and an empty document.
* The 404 error for GETting a deleted doc should say "deleted" as the reason.

Related:
* In read-only mode, return 404 not 400 for a missing database.
Fix link error by exporting _kTDDatabaseManagerDefaultOptions
Change tracker should react to change in credential

If the credential (username) to be used for a remote server is changed,
TDConnectionChangeTracker should use the new credential instead of
continuing to connect with the previously-used one.
Fixes #155

(Adapted from a patch by Nick Van den Bleeken)
Don't return deleted revs from -getDocsWithIDs:

POSTing to _all_docs was sometimes returning the wrong revision of a document, if the highest-numbered
revision was deleted. Fixed now.
Allow POST to _all_docs or _revs_diff when listener is in read-only mode
Better fix for _all_docs

The previous fix didn't account for the fact that a POST to _all_docs should return entries for
deleted documents.
Also, such a POST needs to return the entries in the order of the input doc IDs.
Added unit tests to check these.
Fix: Queries don't return any "doc" property if doc has no custom properties
REST: _all_docs and ?open_revs=all now support ?include_deleted option

This option makes it feasible to find deleted docs and deleted revisions.
This is nonstandard but I'm going to propose CouchDB support it too.
Avoid blocking in SCNetwork from checking reachability too early

Don't call SCNetworkReachabilityGetFlags until it's scheduled with the runloop,
else it could block for a long time on a flaky network doing a DNS lookup.
Fixes #156
Commented out some listener logging code

Accidentally left in some code that turns on verbose logging in the listener.