Blocking, may take a while.
May be called even if already running.
public void stop()
Blocking, may take a while, up to 20 seconds
public void rescan()
Call when IP or network connectivity might have changed.
Starts UPnP if previous start failed, else starts a search.
Must have called start() first, and not called stop().
Should be fast. This only starts the search, the responses
will come in over the MX time (3 seconds).