Catch errors on flush.
Fold FULL worker state into BUSY.
We calculate and report "workers", "total_workers", "total_workers_joined",
"total_workers_connected", "total_worker_slots" without clear
definition on what each mean.

With this change:
workers = init + ready + active workers
total_workers_connected = count of all the worker connections that were
established

total_worker_slots is deprecated in WQ stats and will reflect the number of
running tasks as default. total_workers_joined is similary deprecated and will
reflect total_workers_connected.
Remove the worker states. Instead, use counts of known_workers which tracks all
workers that have identified themselves and available_workers that track workers
that with available resources. These are used in WQ stats, debugging, and places
where we need to know if workers are available for running a task.