Some simple whitespace cleanup to the Arbiter.
Convert all redis sets to sorted sets.

The operations we use most on 'em, like zrem and zadd are much faster
than their unsorted set counterparts.

Each q* redis command now sends a timestamp of when they were called,
this timestamp becomes the score of the sorted set.
Move redis setup to Master and pass to children.

This simplifies the Arbiter and Injector children by quite a bit.
Factor some common code in Master together.

There was much repeated code dealing with the various classes of child
processes.  Now the Master class has a single method for spawning
children and can selectively broadcast signals to children.
Update Arbiter to keep track of its capacity.

This way we don't end up filling up the 'ready' IPC queue with
absolutely every scheduled job if there's a backup.  Now what will
happen is that the jobs that can't be grabbed yet will stay in the
'scheduled' state.  The current epoch seconds minus the lowest score in
the sorted set represent the queue's delay.
New nomenclature to better fit the metaphor.

Master -> Boss
Child -> Worker
Injector -> Loader
Worker -> Unloader

(Arbiter stays the same)
Abstract some common process stuff into a base class.

Mostly process name setting and signal handler mapping.
Abstract worker collection code into a Union class.