refactor saveMessageDraft to also save drafts upon leaving the app