add Letrec to language subset

(proofs broken)
work on CLetrec case of compile_val
more CLetrec case

prove Cenv_bs_FUPDATE_LIST
more CLetrec case
bit more CLetrec case

probably need to change the statement so the cls can change just as the sm changes
work on consolidating sm and cls into a single record

the "refs data" record, which is only used for the proofs, containing a
map from semantic ref numbers to machine ref numbers and from (certain)
machine ref numbers to the closures they are supposed to contain.
WIP: propagating refs_data change, and allowing the cls to change
refs_data change up to statement of compile_val
fix compile_val (except CLetrec case) for refs_data change
progress on CLetrec case

probably only the compile_bindings aspect of letrec remains.
this commit includes a tweak to Cv_bv_rules.
finish CLetrec case of compile_val

this completes the theorem for everything except exceptions.