CKProperty: Protect setValue calls if property is readonly
Adds support for NSSet conversion from array. Set properties are now convertible from JSON using mappings or [NSValueTransformer transformDictionary:toObject]