Looking at the code, it seems currently we only ever TcpStream::connect when ElectrumClient::new is called, but once the connection is aborted or closed the client would get unusable.
It would be great if ElectrumClient could detect disconnections (i.e., catch UnexpectedEof and ConnectionAborted errors) and would continuously try to re-connect, as otherwise the same logic would need to be duplicated at the callsites, which might be much more complicated.
Relatedly, when we do this, we should also do #124.