     bucket : {}
     dirty : {}
     deleted : []
-
 
     obliterate : (cb) ->
       do (@filename, cb) ->



    store : (cb) ->
      do (@fileName, @bucket, @dirty, cb) ->

        _.each @deleted, (id) -> @dirty[id] = {deleted:true, id:id}


    deleteById : (id) ->
      deleted.push id

    getById : (id, includeDirty = false) ->
      if includeDirty
        included = _.extend {}, @bucket, @dirty
        clone included[id]
      else
        clone @bucket[id]

    getByIds : (list) ->
      _.map list, (id) -> clone @bucket[id]
