added communication.cpp communication.hpp (TB, AH)