CB-4748: Fail quickly if dir passed to cordova create is not empty.

Some upstream tools (e.g. mca) need to pass extra configuration to
cordova create. In order to avoid pre-creating .cordova/config.json file
for this, an extra parameter is added to cordova.create(), it should be
an object with the same structure as config.json.

If id or name are given in the extra config, they will be used only if
the value given as the function parameter is falsy:
id = id || cfg.id || DEFAULT_ID