need to create a stack of tags, so that undo can be easy