Add thermodynamic potentials

Not ready to be merged. Opening for comments/suggestions.
okay, so base_materials will create an error here. :-)

Note that base_material is probably not a good name here either, because you are saving a list of lists in it.