reorganize so communication class roles make more sense