Support binding Service Discovery to specific IP or hostname

Now it's possible to specify where to bind the mDNS service to. Previously it would use whatever Java returned as the local host address. On multi interface systems that could cause problems as it sometimes would bind to the wrong interface.