Added merging capability to models.  Using it for CouchDB save operations: before saving the previous version is
fetched and then merged into the current version, which is committed.  Merging operations emit update events so that the display is
updated with the new content.  These changes are undoable, but undo does not behave well with merging (needs to be investigated).
Cleaned up old implementation of merge
1. File model-store (designed for node, partially tested).
2. CouchDB conflict resolution (tested).