separated compiler::do_identifier into do_identifier and do_name. do_name gets a fully resolved name