code: function mergeParams (params, addition) {
  	var ret;
  
  	if (!params){
  		// if it's uncontested, then just return the addition.
  		ret = addition;
  	} else if (braintree_util.isArray(params)) {
  		// if the existing value is an array, then concat it.
  		ret = params.concat(addition);
  	} else if (!braintree_util.isObject(params) || !braintree_util.isObject(addition)) {
  		// if the existing value is not an array, and either are not objects, arrayify it.
  		ret = [params].concat(addition);
  	} else {
  		// else merge them as objects, which is a little more complex
  		ret = mergeObjects(params, addition);
  	}
  	return ret;
  }
docs: the reducer function that merges each query piece together into one set of params