Support model migration when copy migrating & fixed calling copy migration with nil out parameters.

[FIXED]     Support store model migration when doing copy migration by first copying the migration store to a writable temporary store.
[FIXED]     Made all calls that take out parameters more robust against passing nil.
[FIXED]     Some cases where the error object was lost in the error: call.