Vagrant's environment (which includes the known list of boxes and versions) is established at the start of the Vagrant run. This means that box downloads which occur during the run are not contained in the set until the next run. This causes duplicate box downloads to raise an error in multi-machine Vagrantfiles. This commit fixes that issue by pre-processing the machines by provider and version, creating a unique set of boxes to update. Fixes GH-6042
Vagrant Core Plugins
These are plugins that ship with Vagrant. Vagrant core uses its own plugin system to power a lot of the core pieces that ship with Vagrant. Each plugin will have its own README which explains its specific role.