Updated ModelSync.Local code
Unit tests for ModelSync.Local
Updated Model docs with ModelSync.Local usage
Updated App metadata with ModelSync.Local
Update App's unit testing HTML with ModelSync.Local
Update build.json with ModelSync.Local
Improving returned errors in local syncing.
Additional test case for errors such as QUOTA_EXCEEDED_ERR
Fixes getColumn when column is named (but no key)

Added a check for column name besides column key.
Also, added an optimization so that if there is a `host` configured (as
it is usually the case in actual usage, not testing), it can get the
value from `_columnMap` which is much faster.
Fixed an error in deep cloning column info.

The arguments to the search into the array of `known` objects were
reversed.  Cloning of objects with circular references could go forever.
Also, used the newly added `getColumn` method in `body.js` to complete
the functionality of `getColumn` so that columns can be fetched by cell
reference.
Merge branch 'dev-3.x' into dt-colnames
Fixed url and returned false from nodeFormatter

A URL was missing the #
Also, the examples of `nodeFormatter` were not returning false
as the documentation insists they should.
Added documentation-only DataTable.Column class

In order to have some place to put column definitions,
I decided to create a fake class DataTable.Column which
doesn't really have any code but holds the definition
of the properties in the columns definitions.

The column properties have been spread over the files that
actually use them, though the ones in `core.js` should be
distributed into others (like `formatter` in BodyView or
`label` in HeaderView) but they are all listed as belonging
to the base in the user guide.
Added a couple of Y.log statements

Not a big deal since it won't show in the raw or minified version
but if there are duplicate keys, it will log a warning in the
-debug version
Changed `columns` into `displayCols`

To make it clearly different from the whole tree of column defs,
I called this flat array `displayCols` but only in the local variables,
the public interfaces are the same.
Fixed the API docs of `refreshRow` which incorrectly stated that the
third argument wasan array of columns while it really is an array of
names.  Also changed the way to look for the columns since the
className might not be built out of the `key`
Merge branch 'dev-3.x' into dt-colnames
Fix 915. Adjust `_setColumns` to deep clone properly and only once on recursive nodes.
Add test and update history.
Fix 915. Adjust `_setColumns` to deep clone properly and only once on recursive nodes.
Add test and update history.