code: function storage(key, val, cb) {
    var length = arguments.length;
    if (type(arguments[length - 1]) != 'function') length += 1;
  
    switch (length) {
      case 3: return val === null
        ? del(key, cb)
        : set(key, val, cb);
      case 2: return type(key) == 'object'
        ? set(key, val)
        : get(key, val);
      default:
        return count(key);
    }
  }
docs: Facade to get/set/del/count methods.
  
  @param {String|Array|Object} key
  @param {Mixed|Null} val
  @param {Function} cb