[WIP] Figuring out how to fix doctests

Still working on this, but I've started by cleaning up the duplicated definition of `ThermodynamicState`, which was a recipe for disaster (they had different required arguments).