Overshooting problem and kangaroo 2 clarifications

So for the hinge example - one factor here is that this goal uses the signed angle in the plane perpendicular to the hinge axis.
This is important so you can distinguish between mountain and valley folds in origami for example, or to distinguish between convex and concave configurations for a shell. Sometimes you need to control not just the angle the hinge ends up in, but which way around it goes to get there.
It does mean though that in the special case where the rest state of the hinge has an angle of pi between the adjacent face normals, if the momentum carries it even slightly past equilibrium, it will suddenly be in a far from rest state, and will try and go all the way around again. The NoFoldThrough goal is one current way of addressing this (in your example adding this goal to the same points as the hinge with a high strength stabilises it). I’ll think though if there is any better way the hinge goal could be modified to avoid this issue while still allowing control of direction.
There are some of the goals for which the energy is not strictly convex - ConstantTension is one that comes to mind, there are probably others. These can potentially lead to spurious energy increases when used in certain ways, but I still considered them worth including, since there are ways to use them that avoid these issues.
Another goal I realised could lead to instabilities in certain cases was the angle goal, because of some strange scale dependent behaviour, and I’ve fixed this for the next release.