Extended version of unsavedChanges. Now you can attach several listeners at once, detach specific listeners, check the changes ...