mini fixes, protocols now provide functions on channel object