Session 19
Hint 9
The expression may contain free variables! We have to assume they exist at an outer scope so that we can address them.
free-vars can compute this set for us.
Have the initial list of variable declarations contain the set
of free variables, as a sort of global lambda.