Use shellescape to properly escape shell commands

Powershell commands appear to be getting mangled when setting $env:SOMETHING, as the '$env' is getting replaced by the local shell. (Pretty much anything with a `$` is likely to have the same problem.)

On my system, this causes busser (and therefore serverspec) to explode when setting commands such as `$env:BUSSER_ROOT="c:/tmp/busser"` (which becomes `:BUSSER_ROOT="c:/tmp/busser"`)

This patch more correctly escapes the shell command passed to `vagrant winrm`