Adding the ability to redistribute between DistMatrix and BlockDistMatrix [MC,MR] distributions and fixing [Block]DistMatrix so that {Dist,Cross,Redundant}Size return the correct values for processes outside of the process grid. As soon as Grid is extended to support translating ranks from DistComm to VCComm for processes outside of the grid, it will be possible to extend the current BlockDistMatrix unaligned redistribution routine to support redistributions between arbitrary distributions with congruent viewing communicators.