This is a follow-up task on: https://r3-cev.atlassian.net/browse/CORDA-2923
After the completion of that task, the default rpc client API provides a way for the users to enable graceful reconnect. This means that any rpc calls will work transparently during server restarts by blocking and executing when the server is back up and a connection has been established.
From a UI perspective, this might not be optimal in some cases, since the user might want to disable any action buttons while a connection has been dropped and is in the process of re-establishment. This task is about allowing the user to provide a pair of handlers (`onDisconnect`, `onReconnect`) that determine any logic that should be run during a reconnection. This should be done at the level of the `CordaRPCClient.start()` method.
The option described above is provided from `CordaRPCClient`
Any associated components in the NodeExplorer are adjusted accordingly to use these so that the panel is disabled temporarily (and manual testing is performed to ensure that works as expected). The affected classes are `NodeMonitorModel`, `InteractiveShell`.