Add WinRM over SSL support - (replaces #3960)

I updated @pdericson's PR #3960 to:
- Use the released winrm Gem
- Fixed the tests

I'm planning to address my comments from that PR as well:

> - [x] There should be a configuration option for `no_ssl_peer_verification`. Right now it is hardcoded to `true` (no verification).
> - [x] I think the default for `no_ssl_peer_verification` should be `false`. I think it's better to be secure by default and let users opt-out of security if they're not worried about using self-signed certificates for testing.
> - [x] It is using the `:plaintext` transport rather than the `:ssl` transport. WinRM does make an SSL connection even with the `:plaintext` transport, but there are some differences so `:ssl` is preferable.
>
> In fact, I think `config.winrm.transport = :ssl` may be better than `config.winrm.ssl = true`. It matches up with the knife-windows option, and would make it easier to support other winrm transports in the future, like `:kerberos`.

I just wanted to start see Travis go green and open the discussion back up.
Fair enough, but I have some concerns about Vagrant being insecure by default and without adequate warnings about insecure remote connections. I created https://github.com/mitchellh/vagrant/issues/4241 to discuss how to balance short-term compatibility w/ long-term security goals.