immutable collection ctor params

make it possible to deserialize into ctors that have immutable collection parameters