This patches the connection instances generated for the winssh communicator so when a command is executed it is always run with powershell. This prevents inconsistencies with argument handling based on what the default shell is set to on the remote side. Since powershell is the default, environment variable template only needs to be set for powershell style. If the shell setting is updated to `cmd`, the command will be properly prefixed. Default shell has been updated to powershell, to prevent extraneous wrapping where it's not required. The `#ready?` check has also been updated to use a constant value, which is overridden within winssh as a blank command is invalid.
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.