Plugin configuration can have scopes now, ex. provider
Set the virtualbox config scope
Registries support merging
Use registry merging for provider configs
Use registries for the V2 plugin manager
New provisioner API. Shell provisioner adheres to it.
Revamp the configuration internal state for defining provisioners
Remove the ProvisionerCLeanup action from VirtualBox
Provisioner built-in uses new API
Puppet uses the new provisioner API
Chef uses the new provisioner API
Merge branch 'provisioner-revamp'

New provisioner API! Provisioners now have two methods to implement:

  * configure(root_config) - Allows provisioners to define new shared
    folders and such.

  * provision - The actual meat where the provisioner does things with
    the machine.

Note that this removes a feature: `config.vm.provision` argument can
no longer be a class object. It _must_ be a symbol (like ":chef").
Custom provisioners _must_ be created through the new plugin interface.
This can all still be embedded in a single Vagrantfile.