Adding descriptors to rho-related routines.

The build_rho_reduced and transform_rho routines are particularly
difficult because they touch three different parallelization schemes:
 * states,bstates distributed by pot
 * SVD of <b|\rho|b> is pool scope square
 * Singular vectors can't be distributed since <g|b> is dense in b

Going back and expanding the srb_matrix infrastructure to help deal
with messes like this.

Current code works for np = 1.