implement API for queries via GET (Fixes #350)

Make output path optional when executing queries. If not specified,
the evaluator simply leaves a result temporary collection in place.

Added a TODO on cleaning up these temporary collections.
Ah, I missed that. I don't think the `cleanUp` function is pure. Looks like it runs something. You can wrap a `Task` in a `Process` by using `eval`.