Add thermodynamic potentials

Not ready to be merged. Opening for comments/suggestions.
Agreed, it's slow to initialise the full set of 200-odd endmembers in HP2011. What would you suggest?