start writing translation into IL4

But being annoyed by variable names. IL4 is currently nameless, but the
translation into it has to take care to preserve the bindings made by,
e.g., patterns, and this is complicated because pattern-match
compilation introduces its own fresh variables in between them. The
alternative of making IL4 use named variables brings the complication of
potential clashes between source bindings and introduced names (and the
need to calculate freshness). Perhaps two kinds of local variables is
the way to go...