This sounds a lot like what the new Elmo command in Rhino 9 WIP can help you do. I used to to rebuild the curve in the example, and this is what I get:
rebuild_curvature_elmo.3dm (110.3 KB)
If you check out Elmo
’s options in the post above, you’ll see that it covers most of the features you listed, @David53. Please try it out yourself!