channels/client: start breaking down into smaller blocks channel code