Changes in the CDEEventIntegrator and CDEPersistentStoreEnsemble to observe will-save notifications and cancel the merge if one is detected before committing saved data. This should help prevent uniquing problems, where you get two objects with the same global id because one is created during a merge. It can still arise, but should be very unlikely if any objects with potential conflicts are saved immediately.
Merge branch 'master' into baselining

Conflicts:
	Framework/Source/Events/CDEEventIntegrator.h
	Framework/Source/Events/CDEEventIntegrator.m
	Framework/Source/General/CDEDefines.h