code: function processPresets(baseURL, presets) {
  	var normalized = [];
  
  	// path.resolve does not work correctly if baseURL starts with "file:"
  	baseURL = baseURL.replace("file:", "");
  	presets = presets || [];
  
  	presets.forEach(function(preset) {
  		var name = getPresetName(preset);
  
  		if (!includesPresetName(preset) || isBuiltinPreset(name)) {
  			normalized.push(preset);
  		}
  		else if (!isBuiltinPreset(name)) {
  			var npmPresetNameOrPath = getNpmPresetNameOrPath(baseURL, name);
  
  			// load the preset!
  			var presetDefinition = require(npmPresetNameOrPath);
  
  			if (_.isString(preset)) {
  				normalized.push(presetDefinition);
  			}
  			else if (_.isArray(preset)) {
  				// [ presetDefinition, presetOptions ]
  				normalized.push([presetDefinition, preset[1]]);
  			}
  		}
  	});
  
  	return normalized;
  }
docs: Collect built in preset names and non builtin presets functions/objects
  @param {string} baseURL The loader baseURL value
  @param {BabelPreset[]} presets An array of babel presets
  @return {BabelPreset[]} An array of babel presets with non-builtins replaced
  by their respective functions/objects