Added ChannelType support

ChannelType determines what prefix a channel has.  A ChannelType can be
provided on creation of the channel, or it will be automatically
detected based on the first character of the name.