m_spanningtree Assign an id to new Memberships

Increase the next membership id of the channel when a member leaves to
ensure they will not get the same membership id if they rejoin shortly
after.
m_spanningtree Send, parse and translate IJOINs with membership ids
m_spanningtree Add CmdBuilder specialization for FJOIN
m_spanningtree Use the FJOIN builder when a channel is created
m_spanningtree Add CmdBuilder::push_raw_int()
m_spanningtree Send and parse FJOINs with membership ids
m_spanningtree Strip membership ids from FJOINs sent to 1202 protocol servers
Send the membership id when kicking a remote user and drop KICKs with mismatching membership ids

This fixes the desync happening when a PART+JOIN crosses a KICK targetting
the same user.
m_spanningtree Strip membership id from KICKs sent to 1202 protocol servers