Added Message.XMIT_ERROR_RESTART

This Message is NOT intended for transmission over a network. It will be
added into a Queue by a StreamQueueProxy to signal to the application
that an attempt to read from the stream has encountered an exception.
Normally, this requires that the ObjectInputStream and
ObjectOutputStream be regenerated from the InputStream and OutputStream;
a client should respond to XMIT_ERROR_RESTART by disposing of the
existing Object__Streams, Queues, and StreamQueueProxy and creating them
from scratch from the raw binary streams.

I still need to figure out procedures for robust network communication.
That will probably involve feeding malformed data to the program and
seeing how it reacts...those will be some fun tests to run (until I have
to flip half my code upside down to remove one inconvenient
~~bug~~--ahem--FEATURE).
Add Message.XMIT_ERROR_RESTART support to StreamQueueProxy

The anonymous Callable will now return a Command implementation with a
message type of XMIT_ERROR_RESTART instead of returning null. (The
ConcurrentLinkedQueue would choke on a null value, so this is a
preferable alternative.) Clients receiving X_E_R in the input queue
should discard all I/O mechanisms except the Socket and raw binary
streams and reinitialize the object streams, StreamQueueProxy, and
queues.
Clarify some program behavior in StreamQueueProxy.run()

Despite its appearance, the while (true) is NOT an infinite loop!

...(I hope.)