previously we simply used the ip address. this is fairly awkward though.
instead try to deduce a resolvable host name from the pretty name.
fallback order is now:
$prettyName.local (probably dnssd)
$prettyName (probably llmnr)
$ipAddr (neither worked)
because this is getting fairly expensive now: use async resolution for all
qhostinfos. even so, it's too blocking for my liking. it is holding up
dnssd discoveries a noticeable amount.
the more I poke this the more I feel like we might want to refactor most of
the resolver into a caching daemon. doing the discovery dance from scratch
on every listDir seems largely a waste of time. although, that seems
to be literally how it works on windows as well judging from the traffic.