Issue/2596 fixes coredata threading glitch

Fixes #2596

IMO we shouldn't rely on notifications being sent in a specific way. If we need some code running on the main thread and we can't be sure we're being called from the main thread, we should add a `dispatch_async` and be 100% sure