added auto update, changed bad GUI architecture