This allows modders to more finely control the content of surfaces than just 5 discrete values (6 including "none"), as well as allowing values beyond "very-low" or "very-high", without affecting every surface (which would happen if the prototype's autoplace variables were changed).
I do not mind whether this changes the map generation GUI or not. I intend this to be used with create_surface.
For a mod i'm making, I would like to be able to make surfaces that have more varied climates than nauvis, but I do not want nauvis to be changed (thus I can't simply change the prototypes autoplace variables).
A more specific example, if I wanted to make a surface that is almost entirely water, but with a few tiny islands, this is the best I can do at the moment (very-high/very-big water, very-low/very-small grass, none everything else).

I wanted huge oceans with the occasional tiny island (think seablock).
This may also be a good time to add separate concepts for MapGenFrequency and MapGenRichness to avoid confusion of "normal" vs "medium" vs "regular".