substantial refactoring to add lifecycle timestamps to each job
A whole bunch of changes, mostly along two lines:

* make main() a class, for better context storage
* "driverize" logging, and allow file logging rather than only stdout

Also with this we're a little closer to supporting a "master" mode
where one invocation will run both queue and history watchers.
improvements to 'master mode'
Merge branch 'master' of github.com:DHTC-Tools/crow