revamped solver to use top level interfaces to group sparse vector quantities with superimposed group structure (using Node, Cluster, and ScaleStructure objects)