Set, DataSet, Dat and Map yield self when iterated over
Add unit tests for Set/DataSet/Dat/Map iteration
Set, DataSet, Dat, Map have len 1 and tests for it
Add MixedSet type
Add unit tests for MixedSet
Add MixedDataSet type
Unit tests for MixedDataSet
Add MixedDat type
Unit tests for MixedDat
Add MixedMap type
Unit tests for MixedMap
Build a sparsity block for each pair of DataSets in the mixed case
Implement Sparsity __getitem__, shape, __iter__
More Sparsity unit tests, mostly for mixed case
Add unit test creating a Mat from a mixed Sparsity
Add unit test building mixed sparsity
Create a PETSc MatNest if Mat is built from mixed sparsity
Revert back to [] on MixedMaps meaning indexing into the map
Refactor host code gen: move itset loop body to separate template
Host code gen: Factor itset loop body into separate function