   
   save: (callback) ->
     if @_dirty.length == 0
-      callback false
+      callback false if callback
       return
     
     @fire "beforeSave"

      if success
        @fire "afterDelete"
      
      callback success, err
  
  type: -> @constructor.type()


      @_dirty = []

      @fire "afterSave"
      callback success if callback
  
  delete: (callback) ->
    @fire "beforeDelete"
