implementation of static function binding, first-class closures, defines, blocks; REPL now is aware of current environment