The main mapping window is the MapBean, which is a JComponent. It contains Layers, each layer providing a thematic overlay to the map. There is a buffered version of the MapBean called the BufferedMapBean.
The other main component is the MapHandler. The MapHandler is an extended BeanContext, and can be thought of as the widget holding to all the components that make up a map. As a BeanContext, the MapHandler keeps a handle to any object that is put in it, providing access to all components of the map. Any component can be added to the MapHandler. Any component added to the MapHandler that is a BeanContextMembershipListener will be automatically notified when any component is added or removed from the MapHandler. See the MapHandlerChild abstract class for more information about creating a class that uses the MapHandler to locate other needed components.
The extensions to the MapHandler that separate it from a regular BeanContext really center on the notion that some components can implement the SoloMapComponent interface. SoloMapComponents classes are objects where only one instance of them can be found in a MapHandler. The SoloMapComponentPolicy assigned to the MapHandler lets it know what to do when a duplicate instance of a SoloMapComponent is given to the MapHandler - either rejection or replacement are the only options currently provided.
Other components of real interest are: