How do I best create such objects (see below for cross section):
These are curved concave and convex lenses, although it is the curved and constant curvature that gets me. If I do a lathe, the center will be ruined by pinching or ngon but the circumference will be circular. If I start with rounded cube for a perfect center I can no longer get a circular circumference. If I try to do nonlinear editing I will ruin the constant radius (curvature will change). Trying to do it using booleans will just create horrible geometry (this would be easy using CSGs).
So yeah, how the heck do I do this thing?