Thu Aug 20 18:27:29 EDT 2015

Vector output

For now it's enough to fold vectors before exit.

Multi-pass currently isn't possible, as vectors need to be
memory-backed.  Solving the return problem and memory-backing seems to
be the same thing.

Milti-pass is essentially running siso-like operations on a vector,
but with the possibility of recovery the end state.

Compilation monad can take care of temporary space.