rewrote work.Worker and crawler.Crawler to expose worker control