* Store instance name in Thread router discovery
Store the DNS-SD instance name in the Thread router discovery message.
The instance name is the actual name given to a Thread border router,
e.g. when configuring the name of a Thread border router in Apple Home
the name appears as the DNS-SD instance name. This will allow to make
the Thread border router list more user friendly.
* Use instance_name_from_service_info to get instance name
* Initial diagnostics
* Include MLP of local OTBR
* Add dep on pyroute2
* Move pyroute2 onto executor
* More comments
* Read thread data direct from zeroconf cache
* Get neighbour cache for known BR's
* isort
* mypy
* Add diagnostic test
* rel import
* Fix pylint
* Restore coverage in discovery.py
* Add WS command for discovering Thread routers
* Fix type annotations
* Mock zeroconf in tests
* Key discovery by external MAC address
* Add tests
* Include hostname in data, allow missing fields
* Fix typo
* Include server instead of hostname