Replace DnsServerAddresses.random() with shuffle() / Split DnsNameResolver into 3 for readability / Add a simple test for DnsNameResolver / Now follows CNAME, NS, and SOA records / Other various improvements