Add `Queue` and `Route`

This adds a basic `Queue` and `Route`. These will be used to
define queues and add routes to them. The queue is where job
routes are defined and also knows its redis key. This will be
used when adding jobs to the queue and reading jobs that need to
be processed. Routes are a name and a handler class name. When
a route is validated, the handler class name is constantized.
This will be done when a daemon is started so it can quickly route
and run jobs when they are pulled off of redis.
Merge pull request #23 from redding/jcr-queue

Add `Queue` and `Route`
Add `Logger` and `NullLogger`

This adds a `Logger` utility and a `NullLogger`. These will be
used to handle summary and verbose logging. This uses a null
pattern depending for whichever logging is not "turned on". In
verbose mode, the summary method returns a null logger which will
accept all the logging calls but won't do anything with them. When
in summary mode, this is reversed.