Add a serviceDiscovery() method to return the magic service discovery type.
Include a new MDNS-only sendQuestion() to allow sending additional questions using the same socket.  Split out message handlers in _udp().
Update to use the altered resolve() api.