Структура изначально кривовата, времени переделывать уже нет. В конце концов это первый блин в mvc
moduleType - не совсем костыль. Этот параметр берёт своё начало ещё из события, которое посылает меню и в котором указывается что за модуль показывать и с какими параметрами.
Модели все одинаковые, код в соседнем треде про mvc. Ссылки на модели модулей явно нигде не хранятся, поэтому они попадают в GC при удалении модуля.
Модули мне почему-то показалось красивым раскидать по разным пакетом и обозвать одинаковыми именами... Наверно не хотелось в одну кучу всё кидать. Ко мне вообще иногда очень забавные мысли приходят. Но пока ещё всё можно исправить.
А вообще вся эта деятельность направлена на переписывание вот этого чуда:
http://photoroot.ru/ потому что сейчас что-то туда дописывать равносильно копанию в говне.