Started laying the framework for undoable editing