Cleanup HostResolverManager handling of DnsConfig

Various cleanups to simplify things in preparation to convert
config-change listening to SystemDnsConfigChangeNotifier:
*Now that we always have a DnsClient from the start, as long as
 defined(ENABLE_BUILT_IN_DNS), moved a bunch of DnsClient-specific
 properties including ownership of the DnsConfig and overrides into
 DnsClient itself. Figure anything we can move out of the
 overcomplicated HostResolverManager is an improvement.
*Removed assumptions that NetworkChangeNotifier would hold a base
 config, mostly only reading from NCN on change notifications or on
 init (essentially the times SystemDnsConfigChangeNotifier will give
 the manager a config).
*Removed a bunch of unnecessary abstractions for updating and reading
 configuration and secondary state based on the configuration. Most of
 these have become less necessary and more overcomplicated in all the
 recent code churn. More code now more directly updates or reads config
 as necessary.
*Removed some test methods for reading/modifying config now that
 testing code can always interact with a mocked DnsClient or soon
 SystemDnsConfigChangeNotifier.

Bug: 971411
Change-Id: Ia74580c40c6b399da2ab848a4b05854f5f232e81
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742305
Commit-Queue: Eric Orth <[email protected]>
Reviewed-by: Matt Menke <[email protected]>
Cr-Commit-Position: refs/heads/master@{#690856}
diff --git a/net/dns/BUILD.gn b/net/dns/BUILD.gn
index 514dbac..8c23dc94 100644
--- a/net/dns/BUILD.gn
+++ b/net/dns/BUILD.gn
@@ -396,7 +396,10 @@
   }
 
   if (enable_built_in_dns) {
-    sources += [ "address_sorter_unittest.cc" ]
+    sources += [
+      "address_sorter_unittest.cc",
+      "dns_client_unittest.cc",
+    ]
     if (is_posix || is_fuchsia) {
       sources += [ "address_sorter_posix_unittest.cc" ]
     }