gnutls: Add support for requesting certificate via GTlsInteraction

When gnutls asks us for to provide a certificate, on the client we
ask our GTlsInteraction (if available) to provide that certificate.

This allows us to provide a certificate during the handshake, rather
than completing the handshake and forcing the caller to connect again
this time with a certificate.

Fix ups by Dan Winship <danw@gnome.org>

https://bugzilla.gnome.org/show_bug.cgi?id=637257