Server protocol:SJOIN command

The SJOIN command is used to synchronize channel information between servers and for user joins.

Syntax
Syntax: SJOIN timestamp channel :buffer Where:
 * timestamp: creation time of the channel
 * channel: the channel name
 * buffer: the sjoin buffer, explained further down

Creation time and behavior
Similar to, different rules apply depending on how the received channel timestamp differs from the timestamp we have on record for the channel:
 * equal timestamp: the channel has the same creation timestamp on both sides of the link, this means that the channel was not (re)created and is in more or less a "safe state". The IRC server will then "merge" modes. So any bans/exempts/invex (+beI) and privileges (+vhoaq) that only exist on one side will be added on the other side.
 * other server has an older timestamp: this means they hold the original channel and our channel was apparently (re)created later. Their side is the "winner" and thus we will remove ALL modes on our side, so -beI and -vhoaq.
 * other server has a newer timestamp: this means we are the winner because we are the original channel. Simply ignore and do not set their modes. They will take care of removing their own modes.

SJOIN buffer
This part is where all the fun starts. It contains