m_remove Manually forward all REMOVE messages, turn FPART into REMOVE
m_remove Recognize /REMOVE <chan> <nick>

The old syntax is now deprecated

Fixes issue #860 reported by @Shawn-Smith
m_remove Make the protected rank configurable instead of hardcoding it to 50000

Change type of ulevel and tlevel to unsigned int
Document the config options of m_remove
Move pre-kick checks from core to cmd_kick (core_channel)
Change Channel::KickUser() to accept an iterator, add overload that accepts a User

Remove srcmemb parameter
Use the iterator version of Channel::KickUser() in a few places
cmd_kick Assign a value to the kick reason string more reasonably
m_spanningtree Allow callers of InsertCurrentChannelTS() to customize positions
Add channel TS to server-to-server INVITE to detect and drop unauthorized invites

The syntax of the server-to-server INVITE command changes from
:<source> INVITE <target> <channel> [<expire>]
to
:<source> INVITE <target> <channel> <chants> [<expire>]
Return the newly created Membership object from Channel::ForceJoin()