Codegen for closures
Merge branch 'feature/closure-codegen'