Added beginEditing/endEditing to methods modifying multiple attributes at once (to optimize consolidation and observers and avoid performing them each time)