     @_store.refresh options
 
   ###
-    changedAttributes - override to treat relations
-  ###
-  changedAttributes: (attr) ->
-    changedAttr = super
-    if attr? and changedAttr
-      _.each changedAttr, (value, key) =>
-        # TODO: Should iterate over hasMany to check if it has changed
-        if @belongsTo[key] or @hasOne[key] or @hasMany[key] or @hasAndBelongsToMany[key]
-          delete changedAttr[key]
-      changedAttr = false if _.isEmpty(changedAttr)
-    return changedAttr
-
-  ###
     setPersistent - change persistent model state
 
     Models marked as persistent are not released from Store upon releaseAll call

  ###
  syncChangedAttributes: (attr) ->
    changed = {}
    _.each attr, (value, key) =>
      unless (@belongsTo[key] or @hasMany[key] or @hasAndBelongsToMany[key] or @hasOne[key])
        if _.isArray(@syncAttributes[key]) and _.isArray(value)
          diff = _.difference(@syncAttributes[key], value)
          if diff.length
            changed[key] = attr[key]
        else if @syncAttributes[key] != attr[key]
          changed[key] = attr[key]
      else
        changed[key] = attr[key]

      else if serverChangedAttr
        storedModel.set(serverChangedAttr, {storeSync:true, silent:true})
        storedModel.trigger('change', storedModel)
        @reportSync(storedModel)

      storedModel.trigger('refresh:done', storedModel)
      return storedModel
