updated TQL tests
scheduler updates

* renamed Coroutine to Task, Task to Worker.
* added Task.whenStateChanges() method.
* added Worker.whenDone() method.
* updated Worker iteration to handle generators and deferreds properly.
* added unit tests.
fixed task resume from deferred
ported event writer to task interface
load Scheduler as a Utility in server

* added zope.component as a runtime dependency
make store writing async, using tasks
remove old getRegistry references
made Scheduler a twisted Service
create Task for use by store output plugin
remove ISchema.hasField() interface method
make searching async, using Tasks
preserve stack traces when Worker throws an exception