First draft of BVL (bytecode-value language).

The semantics is defined as an evaluation function.

This commit includes the correctness proof of a
simple optimisation: inlining of a function body.
Merge remote-tracking branch 'origin/master' into cenv_close
clean up of BVL
Merge remote-tracking branch 'origin/master' into cenv_close
Good progress on the first IL proof

The proof that the removal of globals from closures is now complete for
expressions (except for cheated letrec and pattern matching). This means
that I most likely have the right relation on pre and post compilation
values.