Nothing set in stone yet, we'll document things once the API becomes more stable and once it has been used in several dialogs and instruments

At the moment, this implements the notion of a "LayeredMap", a LayeredMap is a conventional Canvas Map which has support for easily managing "Layers",
which are internally mapped to Canvas Groups. Each Group's "visible" property is managed by the LayeredMap, so that layers can be easily
toggled on/off, i.e. via checkboxes.

Basically, the idea is this, we'll have a MVC (Model/View/Controller) setup, where:
	- the Model is mapped to the drawable's meta information (i.e. position)
	- the View is mapped to a conventional canvas group
	- the Controller is mapped to a bunch of property/timer callbacks to control the Model/View




Model = PositionedSource
View =  Canvas
Controller = control properties (zoom, range etc)

LayerElement = callback to create a canvas group
Layer = canvas.Group

Map -> LayeredMap -> GenericMap -> AirportMap