The whole project is revised for MPI parallel computing. Interface of some functions changes a lot. Graphene Class is given up because I would like to face physical memeory more directly in order to obtain more efficient computation and more flexible operation on memory so that MPI could be utilized better. The basic principle of the order of the arguments in various functions is that the main input arguments lie on the left and output arguments lie after, while paraments lies at the tail of the sequence. Files are separated more explictly.