more cleanup... channel api is coming together