There is no undo/redo functionality

If one is annotating a very large or complex set of objects, adding undo/redo can be a time saver.

One possible way to implement a simple undo/redo stack would be to insert lambda's that redo/undo the last action using the "command pattern" design.