meaningful button names
auto save widget
use convenient method makeRectangle
refactoring
refactored layoutsolver to use parent-child relationship instead of reference hack