Add thermodynamic potentials

Not ready to be merged. Opening for comments/suggestions.
Agreed. I think having the class names as found in the papers is a sensible thing to do, but would be very happy to also have more sensible aliases... it took me a couple of seconds to work out what ri was...