[core] Add SASL auth capability

This starts IRCv3 compatibility, but the interfaces should be refined
somewhat.
Merge branch 'master' into ircv3
[docs] Touch up a few flaws in the documentation
Merge branch 'ircv3'