Make the presence of a working USB subsystem optional.
The library will function if it isn't there or doesn't start.
Avoid a double deletion of a socket that causes a crash.
Both prevent the call and harden the socket routines to better deal with nil inputs.