Hey, typecast to any broke a while back. Whoopsies.

...and add a new test to make sure this doesn't happen again.
Emitter: New macro: ENSURE_SIG_STACK, because callers can't check size right.

I tried something a bit more complicated for the emitter and got a few invalid
reads from valgrind. It turns out that a lot of callers were using > instead of
>= against sig_stack_size.

Provide a macro, and likely fix up numerous problems in the process.
Initial swing at lambdas. Some stuff works.

What does work:
* Freezing/thaw-ing state of the ast pool so that the body of a lambda can run
  and the expression verified.
* Comments and multi-line lambdas.
* The o_return_expected trailer at the end of a function is written for a
  lambda that yields a value.
* In theory, nested lambdas.
* In theory, it seems that lambdas are smart enough to not clobber any
  storages currently used during their exec.

What doesn't:
* Lambdas currently assume a single argument.
* Type resolution is not performed on arguments.
* An expected sig of NULL should result in a new sig for the lambda bein
  built that properly describes what it returns.
* Strings within a lambda (I intend to redo string collection in lexer since
  it seems pretty terrible).
* Error messages are weird (the runners need to be updated to not show lambdas
  and to also copy the line number from lambdas downward.