using nsdictionaries rather than mutable kind -- due to thread safety for the future

doing persist w/ background task handler, as it is most likely called when backgrounding / terminating