Tentative support for GnuTLS

Add GnuTLS support for the hashing functions as well as start work on a
GnuTLS IO stream.