Use github.com/miekg/dns for resolving SRV records

Unfortunately, the core dns support in go's `net` package doesn't support truncated messages: https://code.google.com/p/go/issues/detail?id=5686
There is also no higher level DNS library beside a wrapper around unbound's c library, so that's why we need to address it low-levelish here.