code: function getCacheFor(transaction, store) {
    var prefix = store.prefix()[0];
    var cache = transaction._cache;
    var subCache = cache.get(prefix);
    if (!subCache) {
      subCache = new pouchdbCollections.Map();
      cache.set(prefix, subCache);
    }
    return subCache;
  }
docs: similar to an idb or websql transaction object designed to be passed around. basically just caches things in-memory and then does a big batch() operation when you're done