more clean up, possibly finished
moved large chunks from Widgets class to Logic_SelectBox class and combining reused code