Add a Barycentre function for DegreesOfFreedom and use it to simplify the transforms.

`barycentre_degrees_of_freedom` must be a convex combination of the other two parameters. Document that, but I'm not sure I like the idea of adding this requirement to this function: the previous version had no such condition on its parameters...