Fix issue on undo
Minor changes
Support undo with gc state on draw path
Support undo with gc state on draw rectangle
Fix issue to choose the same tool
Fix issue when tool was chosen
Fix issue to draw rectangle on pick