Handle GnuTLS errors and partial sends in gnutls "module".
* mandos (GnuTLS.E_INTERRUPTED, GnuTLS.E_AGAIN): New. (GnuTLS.Error): Set error code as "code" attribute. (GnuTLS.ClientSession.send): Handle partial sends with a loop. (GnuTLS._retry_on_error): New function. (GnuTLS.record_send, GnuTLS.handshake, GnuTLS.bye): Set "errcheck" attribute to "_retry_on_error". (ClientHandler.handle): Remove loop for handling partial sends; GnuTLS.ClientSession.send() will do that.