I don´t exactly know if this works but -
you might try to create a joint circle. then create an IK spline in shape of your circle. the curve you get from the IK spline handle tool you can rebuild to desired numbers of CVs. for each CV create a cluster now. so - idk if the circle wont deform in if you have too sharp turns in shape, but you can now animate the clusters which drive the curve which drives the joint chain which drives the geometry.... in theory
maybe it is worth a try.
everything starts and ends in the right place at the right time.