Remotery:
* Remove auto-destroy of socket resources from within the socket if any errors are detected.
* Leave resource destruction optionally up to the calling thread.
* Only destroy sockets with errors from the main server thread. Text logging just returns with error.
* Server listen socket can destroy itself and re-open on any errors.