intial commit of join

the upper limit on the buferred channel worries me - should we put that into a rule?