Remove protocol assertions, the value may be immutable

And only the mutable collections conform to the <RACCollection>
protocols.
Implement <NSCopying> and <NSObject> for mutations
Require <RACCollection>s to support fast enumeration
Use mutable collections on RACTestObject
Combine describe() blocks for -rac_valuesAndChanges…
Convert all KVO change collections to arrays
Tests for -rac_valuesAndCollectionMutations…
Treat unordered replacements as RACSettingMutations