With this new feature you can pass an array of plugin locations/names to
both "verifyConditions" and "verifyRelease" in your `package.json`'s "release"
field. This will run multiple verification plugins in series.
Removes dependency bundling, because it's broken for scoped modules with npm
right now. Keeps npm from logging four ugly warnings upon install.
Can be reverted once https://github.com/npm/npm/issues/9175 is closed.
This commit does a lot but it's all connected and tries to make everything more extensible and future proof.
1. CLI arguments and options from the "package.json" are no longer treated as two different things. You can now pass options either way.
BREAKING CHANGE: cli arguments are now normalized to camelCase, so e.g. `options['github-url']` is now `options.githubUrl`
2. Plugins no longer receive config they need one by one, but in one huge object. This way it's easier to pass more info in the future w/o breaking existing plugins that rely on the position of the callback in the arguments array.
BREAKING CHANGE: Plugins now need to read their passed options from one huge config object.
Old:
```js
module.exports = function (pluginConfig, foo, bar, cb) {…}
```
New:
```js
// ES5
module.exports = function(pluginConfig, config, cb) {
var foo = config.foo
var bar = config.bar
…
}
// ES6
module.exports = function (pluginConfig, {foo, bar}, cb) {…}
```