m_spanningtree Move c2s commands out of SpanningTreeCommands to auto register them
m_spanningtree Handle ERROR when fully connected
m_spanningtree Minor fixes

- Handle the case when servers SQUIT themselves
- Fix extra space in channel messages
Add a type id field to ModeHandler
Create a base class for prefix modes

Move Channel::SetPrefix() into Membership
Move prefix mode specific fields and getters into PrefixMode

Add ModeHandler::IsPrefixMode()
Convert cmd_modenotice into an optional module
m_modenotice Use WriteNotice()
Add ModeHandler::IsListModeBase() and MC_LIST
Keep lists of mode handlers by type
Send ListModeBase modes implicitly on channel sync

Remove Module::ProtoSendMode() and ListModeBase::DoSyncChannel()
Split ProtocolInterface::SendMetaData() into multiple functions
Pass an interface to the OnSync hooks

Remove Module::ProtoSendMetaData()
m_services_account Remove OnDecodeMetaData handler

Override StringExtItem::unserialize() instead
Remove redundant parameter.clear()s from mode handlers