work in progress - adding IUpdate as form of lightweight script interface