Disjoint factor analysis with cross-loadings