Make observe code use symmetry patches
The observe code should use symmetry patches in the same way that the Kron does. Moreover, each symmetry patch should be a MatrixDenseOrSparse object so that it goes to CRS or dense Matrix depending on how sparse it is.