anchor.diff:    final DbCollection collection, _collectionHistory, _lock;
     List<Map> _selectorList = [];
     Map _sortParams = {};
  +  List _excludeFields = [];
  +  List _fields = [];
     num _limit = NOLIMIT;
     num _skip = NOSKIP;
   
  
positive.code:    * Returns data and version of this data 7.
     */
    Future<Map> data({projection: null, stripVersion: true}) {
      return collection.find(where.raw(_rawSelector).limit(_limit).skip(_skip)).toList().then((data) {
        //return _maxVersion.then((version) => {'data': data, 'version': version});
        var version = data.length == 0 ? 0 : data.map((item) => item['__clean_version']).reduce(max);
        if(stripVersion) _stripCleanVersion(data);
  
negative.code:     this._selectorList = new List.from(mp._selectorList);
      this._limit = mp._limit;
      this._skip = mp._skip;
      this._fields = mp._fields;
      this._excludeFields = mp._excludeFields;
    }
  
    Future deleteHistory(num version) {
      return _collectionHistory.remove({'version': {LT: version}});
    }
  
    MongoProvider fields(List<String> fields) {
      this._fields.addAll(fields);
    }
  
    MongoProvider excludeFields(List<String> excludeFields) {
      this._excludeFields.addAll(excludeFields);
    }
  
    MongoProvider find(Map params) {
  