unnests top-level begin statements (but not nested begins). implemented set!. fixed  (define func (lambda () ) ) AGAIN