Fix logging levels

Fixes #801
Use a try/catch block rather than method swizzling to handle undefined keys
modelClass is nicer than klass
Only call the completion handler once when a context has no changes

Fixes #818
Fix date formating
Merge commit '0b00b709e05ca2dd6761f8771afb6726cf7c5a93' into release/3.0