ForkingTaskRunner: Make TaskInfo into ForkingTaskRunnerWorkItem

This allows the API/GUI to return reasonable results when the primary
task runner is a ForkingTaskRunner.
Workers announce TaskAnnouncement rather than TaskStatus
Add missing license headers
Merge pull request #224 from metamx/task-announcement

Task announcement
Merge branch 'master' into num-shard-spec