Adding first test for CREATE.

This ensures that the underlying SQL database looks as expected
after inserting a single 'hello world' document.
Adding protection against non-serializable dictionaries.

This commits tests to ensure that non-serializable dictionaries
cannot successfully be used to create CDTDocumentBody objects.
Additionally, a change was made in TD_Database+Insertion to check
for nil pointer to TD_Revision.body before insertion begins.
The method isValidJSONObject was added to TDJSON to support JSONKit.
Add test for creating second document with same _id.
Adding update tests.

This tests updates with bad/old revision values and examines the
underlying SQLite database for lots of updates (>1000) to a single
document.
Adding new delete test and modified some update tests

* removed CloudantSyncTests setOfSqlTables method in
favor of a lazily instantiated property, sqlTables, that properly
retrieves the set of tables found in the SQLite DB from sqlite_master
rather than returning a hard-coded set of strings.

* cleaned up a bit of FMDatabaseQueue code blocks related to properly
using strong/weak pointers to self.

* combined three of the 'update' tests into a single test function
Cleanup and add update tests.

This cleans up a number of lines of code. Randomly scattered.

Adds testUpdateWithNilDocument.

Adds testUpdateDelete, but this is entirely commented out at the moment
because the test does not pass.