m_sasl: properly handle bad-mechanism failures

When the client requested a bad SASL mechanism, with Anope the ircd would send the services reply raw instead of sending the apropriate numeric. With Atheme, it *accidentally* worked because the extra "known mechanisms" reply would move to the apropriate state.

This e-note makes message handling the same in both SASL_INIT and SASL_COMM states and adds the "available SASL mechanisms" numeric.