Begin switch to more extensible update model