I just did a git diff and it didn't look to scary. Only tried it in my on little project though.

```
diff --git a/src/jquery.Midgard.midgardCreate.js b/src/jquery.Midgard.midgardCreate.js
index 73f03b5..a0e6549 100644
--- a/src/jquery.Midgard.midgardCreate.js
+++ b/src/jquery.Midgard.midgardCreate.js
@@ -108,8 +108,11 @@
       if (!this.options.language) {
         this.options.language = jQuery('html').attr('lang');
       }
-
-      this._enableToolbar();
+      
+      if(this.options.toolbar) {
+        this._enableToolbar();
+      }
+      
       this._enableMetadata();
       this._saveButton();
       this._editButton();

diff --git a/src/jquery.Midgard.midgardStorage.js b/src/jquery.Midgard.midgardStorage.js
index 75ef838..984edc3 100644
--- a/src/jquery.Midgard.midgardStorage.js
+++ b/src/jquery.Midgard.midgardStorage.js
@@ -117,6 +117,9 @@
       widget.element.on(widget.options.editableNs + 'changed', function (event, options) {
         if (_.indexOf(widget.changedModels, options.instance) === -1) {
           widget.changedModels.push(options.instance);
+          options.instance.midgardStorageVersion = 1;
+        } else {
+          options.instance.midgardStorageVersion++;
         }
         widget._saveLocal(options.instance);
       });
@@ -281,15 +284,18 @@
         options: options
       });
 
-      var widget = this;
+      var widget = this,
+          previousVersion = model.midgardStorageVersion;
       model.save(null, _.extend({}, options, {
         success: function (m, response) {
           // From now on we're going with the values we have on server
           model._originalAttributes = _.clone(model.attributes);
           widget._removeLocal(model);
           window.setTimeout(function () {
-            // Remove the model from the list of changed models after saving
-            widget.changedModels.splice(widget.changedModels.indexOf(model), 1);
+            // Remove the model from the list of changed models after saving if no other change was made to the model
+            if (model.midgardStorageVersion == previousVersion) {
+              widget.changedModels.splice(widget.changedModels.indexOf(model), 1);
+            }
           }, 0);
           if (_.isFunction(options.success)) {
             options.success(m, response);
```

The rest was basically moving the vie.js