1) implement l2 regularization. 2) mpi::reduce<vector> instead of mpi::reduce<FastSparseVector>. 3) rename some methods. 4) fix some bugs. 5) there's still a bug.