added gpio communicator class