"potentially unsaved changes" remark
Actually checking if the server element is different than the local element is too expensive. Just have a flag "potential_changes_made" that turns on when the user edits something, and turns off when they save/write to server