fixed all of the existing features (with one quirk) using new toolkit model