Add TCP reconnect functionality
Currently, the program crashes if the back-end stops responding (for example when power-cycling the fridge). The connection is closed, but not all resources are released, creating the illusion of a running DecsVisa server.
Attempting to interact with the fridge through the ProteoxDriver will result in a VisaIOError on timeout reached.
Two potential ways forward:
- Implement a connection polling solution that attempts to reconnect.
- Properly shut down DecsVisa on a lost connection.