Rework PairedNode reconnection handling
* make sure only one reconnection process runs at a time
* Makes sure to return error on command after 10-20s max. (20s if we found a new IP, else only 10s)
* Send out mdns query when client has first resubmission of message
* track running discoveries by type and replace/reuse when needed
* restructure some method signatures to combine params into object. slightly breaking if used
* makes sure Node state is always set correctly