cleaning up BlockCommunicator use and interface