code: function update(values, returning) {
      var ret,
          obj = this._single.update || {};
      this._method = 'update';
      if (typeof values === 'string') {
        obj[values] = returning;
        if (arguments.length > 2) {
          ret = arguments[2];
        }
      } else {
        var i = -1,
            keys = Object.keys(values);
        if (this._single.update) {
          debug('Update called multiple times with objects.');
        }
        while (++i < keys.length) {
          obj[keys[i]] = values[keys[i]];
        }
        ret = arguments[1];
      }
      if (!isEmpty(ret)) {
        this.returning(ret);
      }
      this._single.update = obj;
      return this;
    }
docs: Sets the values for an `update`, allowing for both `.update(key, value, [returning])` and `.update(obj, [returning])` syntaxes.