Add ButtonBehavior. Widgets are now FlexibleObjects

Add peekPropertyAs to flexibleaccess
By default widget style is set to its type