allow processLanguageDecl to return a list of required modules
rename processLanguageSpecificDecl -> processBaseDecl