Make tile attribute changes undoable