fix windows guest with puppet and a facter block

Powershell doesn't understand the unix-style ENV=thing command syntax, the old vagrant-windows plugin monkey patched the provisioner to put semicolons between statements to set the variables before running puppet - this fixes the issue inside a windows? block leaving the normal non-windows code path working - therefore works for me on both unix and windows provisions with a facter block in place
Merge pull request #3776 from agilebarbecue/master

provisioners/puppet: fix windows guest with puppet and a facter block
Update CHANGELOG
Set disabled even if no disabled option

to override the previous settings
Revise the unit case, too
guests/freebsd: Properly register that the rsync_pre capability belongs to FreeBSD rather than defining re-defining it for Linux.
Update CHANGELOG
Merge pull request #3786 from treyhyde/master

hosts/freebsd: Unbreak rsync provisioning for FreeBSD by properly registering the rsync_pre capability
commands/halt: halt in reverse order [GH-3790]
Fixed issue 3729

The logic used to read the file contents sometimes would leave lines behind unread. It now defaults to reading all lines and counts each line it has actually read.
Merge pull request #3803 from mitchellh/issue-3729

guests/windows: change elevated shell output to better get output
providers/docker: Fix SSH access to container when no Host VM is in use [GH-3799]
Inverting the hash of driver_mac_addresses returned by machine.provider.capability(:nic_mac_addresses).

The previous code expected the hash to use the mac addresses as the keys, the original code had the indices as the keys.
Adds minimal implementation to deploy a Salt minion on Windows including support for pre-seeding the keys
redirect output of mkdir statement to out-null in bootstrap-salt.ps1
sometimes salt-minion wouldn't start - this seems stable so far across 10 deploys
core: only set ID on machine if data dir [GH-3827]
Update CHANGELOG
core: WaitForCommunicator always asks for state

This forces global-status to be up-to-date typically
synced_folders/rsync: rsync__chown [GH-3810]