Yes, for the mesh cage morph to work, the reference and target meshes have to have identical topology (i.e. the same number of vertices and faces, in the same order, and faces referencing the same vertices. The only thing that should change is the positions of the vertices.)
The mesh can actually consist of multiple disjoint (closed) parts though (this actually came as a surprise to me, since I didn’t consider this possibility when writing it!). They also don’t need to completely enclose the object, and the deformations blend smoothly outside the cage.
The beam approach in my last post is extendable to limbs. The definition gets a bit more complex though depending on how you want the joints to behave. Each beam segment should have its start and end frames parallel, with their Z axes coincident. I’ll try and put together an example.
The bit I was still trying to improve is the plastic joints, so you can do something like bend an elbow and have it hold an angle, and not have the downstream parts of the skeleton like the hand lose their pose during this. I’m trying to do this without having to have a hard IK or FK mode, but more an adjustable mixing of the two. In this sense, something that moves like a fish is actually easier, since moving it all with soft IK looks right.
I’ll also try and get something ready to share with new skinning with just frames as bones, like in the dinosaur example. This way you don’t need to create any cages, just planes.