Fixed up my refactoring of markToRevert so now _revertAttributes is only populated the first time set is called.