Add --winrm-authentication-protocol option 

@adamedx @NimishaS 

--winrm-authentication-protocol option has [basic, negotiate, kerberos] values. 
On windows --winrm-authentication-protocol = 'negotiate' applies 'winrm-s' monkey patch to do encrypted winrm communication.

I think we should raise an error if the user name contains domain and plaintext + basic auth is used -- the error can say something like "The winrm_authentication_protocol option must be configured to negotiate_auth if a domain is specified".