more uniform synchronized variables;
canonical list operations, as in ML;
avoid odd mutable data structures;
tuned signature in accordance to ML version;
more canonical list operations;
retain canonical reverse order;
eliminated redundant Volatile;
tuned signature, in accordance to ML version;
synchronized access, similar to ML version;
added Mailbox, as in ML;
proper signaling after each state update (NB: ML version does this uniformly via timed_access);
consumer thread with unbounded queueing of requests (similar to Message_Channel in ML);
more robust shutdown;
less ooddities;
eliminated pointless output actors;
clarified command_input, which already includes thread.join;
allow more control of main loop;
more robust is_active test, although thread could terminate at any time;
further robustification wrt. unclear ranges;
clarified command_input: Consumer_Thread;
more robust thread: continue after failure;
support for requests with explicit acknowledgment (and exception propagation);
tuned imports;
simplified -- prefer Consumer_Thread over Actor;