Syntax change for krb5.conf to use URL form

Current syntax is `kdc = [(udp|tcp)://]<kdc.addr>[:<port>]`.
Expand socktype usage to protocol enumerator

The protocol enumerator retains all definitions of socktypes (preserving
backward comparability) while allowing for new protocols to be defined.
Add HTTP transport for traffic

This uses base64 encoding and POST requests to encapsulate kerberos messages.
Configuration file syntax changed to `kdc =
[(tcp|udp|http)://]<addr.of.kdc>[:<port>]`.
Enable kpasswd protocol to use HTTP for transport

Forces kpasswd to respect the transport protocol defined in krb5.conf instead
of ignoring it and choosing UDP.
Allow specification of page to POST to for HTTP

krb5.conf syntax is now `kdc =
[(tcp|udp|http)://]<addr.of.kdc>[:<port>][/<page>]` with the understanding
that <page> will be ignored when HTTP is not specified.
Add HTTPS transport for traffic

krb5.conf syntax is now `kdc =
[(tcp|udp|http|https)]://<addr.of.kdc>[:<port>][/<page>]` with the
understanding that <page> will be ignored if the protocol is not HTTP or
HTTPS.