context menu: add undo barriers where needed.

partially addresses #55