Building tensor in a distributed fashion

1. Ship the whiten matrix W to every slaves and the slaves will send back E[W'X] and E[W'X (x)^3]
2. Change MPI_Isend and MPI_Irecv back to MPI_Send and MPI_Recv
   MPI_Isend and MPI_Irecv may cause wrong answer. It's maybe because of the network buffer?
   However, after change these two function back, I got the synchronization problem (deadlock?) again