Так что я бы делал вот такую структуру:
Text
-ru //для всех наследников подключили русский
-module
-en //для всех наследников подключили английский
-module
Если такой вариант категорически не нравится, то можно поступить двумя другими способами:
1. пишем модуль, который мониторит URL на предмет наличия в нем указания локали и переключает ее. Модуль объявляем статическим и вешаем на корневой элемент сайта. В этом случае понадобится только одна ветвь. В этом случае локаль надо будет передавать в качестве параметра (что повлечет кучу неудобств), либо хранить в куках или сессии.
2. второй вариант идеологически более правильный: пишем свой класс разбора/генерации url, который будет добавлять и откусывать в начало URL текущую локаль. От имеющегося класса он будет отличаться совсем незначительно, так что логично от текущего класса его и унаследовать.