Issue:
If there is a slow/failing relay requests and broadcast can take really long (max timout time of 5s)
Proposal:
Implement register and deregister request on relay manager.
Flow:
1.) register request
2.) try to connect to relay
2.1.) on fail deregister and check if its the last request (EOSE)
3.) on connect (or already connected) send out the request
Its important to register before connecting, so there is no race condition with a fast(already connected) relay and a slow one.
The incoming EOSE from fast relay might complete before connecting to a slow relay succeeds =>race condition