I can create a new surfaces easily, but as far as I can tell, the only way to get create something dramatically different would be to create a new table of map generation settings.create_surface - takes a string name and optionally a table of map gen settings and creates a new surface.
Does anyone know how a table of map gen settings is laid out, and how someone would go about creating a new table?