Adding unsaved changes tracking and prompt