add icon
add icons
add icons
add docment variables object

to store document wide settings
move current layer from storage to document variables object
support undo / redo for current layer