Extract RecordsList and SubdomainsList to top-level classes DnsRecordsList and DnsSubdomainsList
Disable warning 649 in object model classes where fields are initialized via reflection
Use ExtensibleEnum<T> for existing enumeration types
checkpoint