drop intermediate collections after final result is generated (Fixes #339)
respond to PR feedback

simplify handling of temp collections:
- Write result of each (non-read) task to a new temp collection.
- The final result is renamed (by the evaluator) to the requested name.
- Detect problem in the structure of FoldLeftTasks

Also:
- more test coverage for evaluator
- fixed checking of results with empty result when matchAll is false
Merge pull request #340 from mossprescott/ready/339

drop intermediate collections after final result is generated (Fixes #339)