Adding mpi comunication routines and buffered input and output ports