adg: implemented autoscale in AdgCanvas
Added a bunch of API for providing the autoscale feature.
adg_canvas_set_scale{,_valist}() provides a way to specify a list of
scaled to be applied in sequence when adg_canvas_autoscale() is called.
When the first proper scale is found, the scale is applied to the local
map and the drawing is centered.
Actually the APIs are quite bindings unfriendly but that solution to
that problem is postponed when resynchronizing adg-lua.
Closes issue #65: http://dev.entidi.com/p/adg/issues/65/