a canvas library for draggable and zoomable maps using a DOM-like structure