Changed ChannelCollection to use dictionary instead of list