docs: function(opts, callback) {
    if (callback === undefined) {
      throw new Error('callback undefined in $fh.cache. See documentation of $fh.cache for proper usage');
    }
  
    if (opts.act === undefined) {
      return callback('No cache actions defined!');
    }
  
    var fullKey = appname + opts.key;
  
    if (opts.act === 'save') {
      memcached.set(fullKey, opts.value, opts.expire || 0, function(err) {
        if (err) {
          return callback(err);
        }
        // To keep the same api response as redis implemenation, use 'OK' if successfully saved
        return callback(null, 'OK');
      });
    } else if (opts.act === 'load') {
      memcached.get(fullKey, function(err, data) {
        // To keep the same api response as redis implemenation, use null instead of undefined
        if (err) {
          return callback(err);
        }
        return callback(null, data || null);
      });
    } else if (opts.act === 'remove') {
      memcached.del(fullKey, function(err) {
        if (err) {
          return callback(err);
        }
        // To keep the same api response as redis implementation, use null & 1 if successfully removed
        return callback(null, 1);
      });
    } else {
      return callback("Unknown cache action: " + opts.act);
    }
  }