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