Make server URL used for replication tests configurable

Instead of being hardcoded to “http://localhost:5984”,
it can now be overridden by setting the environment variable “CBL_TEST_SERVER”.
Part of issue #93
Fix debug iOS build; clean up iOS public headers

* The last commit broke the debug build on iOS with a link error; fixed.
* The Headers directory in the iOS framework had lots of private headers; removed.
Proper implementation of CBLQueryRow.localSequence

* It now always has the correct value even if includeDocs wasn't true
* Removed CBLView.sequences property; it's now a no-op
Fixed an NSLock misuse warning triggered by -waitForDatabaseNamed:
CBLModel shouldn't reflexively reload itself during -saveAllModels
Increase code coverage of public API in unit tests

...In response to Tommie's code-coverage analysis.
Part of #94.
Replicator now runs in background, using iOS background-task API

Instead of stopping when the app goes into the background, each active
CBL_Replicator now registers a background task with the OS and keeps
running until it goes idle or the task runs out of time.
ChangeTracker shouldn’t stop if it receives _more_ changes than its limit

It’s supposed to stop if it receives fewer than the limit, because that indicates it hit the end;
but the test was using “==“ instead of “>=“, so it also stopped if it got more than it
expected, which is wrong. (Sync Gateway had a bug that cause it to send too many changes,
which triggered this bug.)
Tweaks to keep the static analyzer from complaining about valid code
Fixed a bug in SSL server trust evaluation

(Discovered by the Clang static analyzer!)
Fixed an exception when closing db immediately after creating replication

By the time the replication started an instant later, the db was already
closed, so FMDB threw an exception when trying to query it.
(Discovered with new public-replication-API tests!)
Added some basic unit tests for the public CBLReplication class

For #94
Added CBLViewOptions.reduceSpecified

This allows the options to represent whether the REST ?reduce= parameter is absent.
The map/reduce implementation then interprets reduce as true if it’s absent but there
is a reduce function defined.
Fixes #98
Fixed duplicate revisions returned from longpoll changes feed

Fixes #97
Some unit tests weren’t being run on iOS

Configuration glitches made a few tests run on Mac only, not iOS. Fixed.
Delete sqlite -wal and -shm files along with rest of database

-[CBLDatabase deleteDatabase:] should clean up the side files created
by SQLite. (I hate hardcoding their names, but I don't know any
alternative.)
Better creation of empty databases in unit tests

Added private debug-build-only CBLManager method -createEmptyDatabase:,
for use in API unit tests.
oops, remove yajl submodule (wasn't supposed to be checked in)
Added CGLReplication.channels convenience property

It’s a wrapper around .filter and .query_params that sets the appropriate values for Sync Gateway channel filtering.
ChangeTracker needs to escape “+” char in ?since URL param

Otherwise it produces incorrect URLs pulling from Sync Gateway
channels whose names include “+” chars.
Fixes #99