- if no available gssapi mechanisms, abort instead of sending 0 to
the server
- handle SSH_SMSG_FAILURE messages from server (not sure if server is
misbehaving in this case but the client can do the right thing anyway)
- handle cases where try_gssapi_authentication() fails before beginning
the handshake (for example, if there are no GSSAPI credentials);
previously, we'd block waiting for the server to reply even if we
never sent anything to the server