Restructure expression visitor
no functionality changes
Add nested name specifier translation