Use @{} and @[] in tests instead of macros
Use modern objective-c syntax in tests
Support wrapped dictionaries when receiving collections
Add shouldReplaceCollectionForProperty: override for additive collections