New class WitnessState, representing the witness' local state
Most logic moved to methods of this class, and the thread subclass now acts as a connector between the local state and the log client.
Most logic moved to methods of this class, and the thread subclass now acts as a connector between the local state and the log client.