fixed translation_unit, external_declaration; implemented function_def