changed signature of markUser and markNode to be more consistent
changed name of isChanged method to hasUnsavedChanges