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, unless it's a simple read.
- FoldLeftTask is almost certainly broken at this point.