Support per-nameserver port setting to dns.resolver.Resolver.

This is useful when adding a special nameserver that runs on non-standard DNS port. (For example, a Consul agent).

Note that this is a breaking change for any third party code code that inspects `dns.resolverResolver.nameservers` or `dns.resolverResolver.port`  directly.