Убрал лишние комментарии
Выделил каталоги поиска в отдельные объекты

Плюс добавил возможность легко делать свои классы-обработчики
Убил неиспользуемый класс
Добавил ЗУНы

Таблица

CREATE TABLE `pl_corriculum_discipline_competentions` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `discipline_id` int(11) DEFAULT NULL,
  `competention_id` int(11) DEFAULT NULL,
  `knowledge_id` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;

Справочники
corriculum_competentions
corriculum_knowledges
Отучил систему от кривого кеша
Мелкое исправление - переадресацию на нужную страницу
Перекинул классы для поиска поближе к месту обитания
Добавил возможность расширять систему компонентами
После включения кеша игнорируем кешевые файлы
Выпрямил работу с кешем. Теперь он просто отдельный компонент
Получение настроек с учетом кеша
Поддержка кеша в пользовательских группах
Поддержка кеша в каталоге поиска