New communicator package.

Fixes to address @hannosch's comments.