|He he... nice.|
I wonder if, instead of subsuming one sphere into the next, a new feature 'spline of revolution' could be added (a Bezier path with a circular section; radius might vary along). Normals should (methink) be as easy or hard to calculate as for the sphere case. The only drawback is that your worm won't have ring segments (unless the radius variations maikes it so).
And BTW, you did change your library to construct 3-D Beziers, in order to do that picture. Didn't you?