Properties are now loaded from /news/news.properties and can be overridden by placing another news.properties in the working directory.
Enhancements to task scheduling and execution.
- TaskWorker IDs are now based on the host address.  In the event of a collision, a UUID is used.
- Tasks now have an initialize() method which the TaskWorker calls just before executing the task.
- Tasks are now executed via the Callable interface.  Timing and logging is done in the call() method.
- Tasks are now executed by the TaskWorker using an ExecutorService.  Tasks which take longer than task.abort.seconds to complete will cause the worker virtual machine to exit.
- Tasks are now retried up to three times before being abandoned.
- Cleaned up logging.
Merge remote-tracking branch 'origin/master'