Extended planet support should have these requirements:
1.) A method Planet* MarbleModel::planet() which returns an object of Planet class type.
2.) The Planet class should store all kinds of properties for a planet (e.g. name, radius, all planetary constants) and should provide setters and getters for them.
3.) A PlanetFactory that allows to create these planet objects -- either just by providing a name id (to create planets from preset settings) -- or by providing the full amount of properties.
4.) For a start it would be ok to store the parameters for the planets in the source code. In the next step DGML support would be necessary (so that the preset settings can be provided in a central dgml-file and so that one can also pass them alternatively in each DGML file via the "target"-tag.