Improve VM and compiler, fix compiler bug

* Add `comp-show-str`, `run-str` and `result-str` functions to the
  compiler that take strings as input.
* Make `LSET` not change the stack.
* Pop `set!` values off the stack.
* Make `active-frames`, `stopped-frame` and `result` in the `revue.vm`
  package work on traces, not programs.