* refactors "toggling" of recorded/checked state * introduces mark_as_edited() for RecordableObjectMixin