Merge pull request #114 from redding/jcr-server-config-data

Add `Server::ConfigData`, make `HostData` compatible
Create `WorkerOld`, copy of `Worker`

This is setup for changing `Worker` to work with the new `Server`.
This takes the current worker logic and moves it to `WorkerOld`
and updates everything using `Worker` to use `WorkerOld` instead.

I did this to free-up the `Worker` name but I also wanted to
preserve the diff from the old worker logic to the new worker
logic which will come in a separate commit. That's why I left the
old worker logic in `sanford/worker.rb`.
Merge pull request #115 from redding/jcr-move-worker

Create `WorkerOld`, copy of `Worker`
Update `Worker` to work with `Server::ConfigData`

This updates the `Worker` to work with the `Server::ConfigData`.
Overall, the worker works as it previously did. It takes a
connection and config data, and when run, reads the request,
runs a service handler and writes a response. The biggest
difference is that it now looks up a route via the config data and
then runs the route, passing it the request and the config data
logger. Previously, it would get the handler class from the host
data and then have the host data run the handler class, passing
the request. This is part of switching to the new server logic.
The new `Server` will run this `Worker` similar to how the old
server logic runs the old worker now.

This also adds proper unit tests for the worker tests which
basically weren't done for the old worker logic.