Updated Kerberos support to allow the use of non-default credentials, and delegation

This PR enables non-default credentials for Kerberos authentication. The current implementation relies on the credentials being available in the credential cache (using kinit).

The winrm.Protocol class also has a new constructor parameter enable_kerberos_delegation which allows a user to request a Kerberos ticket that supports delegation. Delegation is off by default.