Declare base type fields before value type fields
Recursive Marshaling of value class fields
Recursive struct fields marshaling
Added to value type constructors, native value type initialization and copy from native fields to managed fields.