Moving more code out of DistMatrix::operator= and introducing the InterleaveMatrix function