Fix assertion failure on double-challenge in SASL authentication

This can not normally happen, however if a client sends a response
before the server having asked for it, an assertion was hit in
InfSaslContext.

This behaviour is not allowed by SASL which follows a strict
challenge -> response -> challenge -> response etc. pattern.
Therefore, in this case the authentication is aborted now.
Replace InfStandaloneIo by GAsyncQueue in InfSaslContext

This simplifies the code a bit, and probably involves less overhead in the
message passing.