Значит в кэше должен лежать массив пунктов меню, а не тело модуля. А для модулей нового и популярного можно положить и тело (хтмл). Но при этом сам модуль должен разделять области видимости для разных групп юзеров и сам решать, делать ему один общий кэш или несколько. Так же и компоненты.невозможно подсветить текущий пункт меню
Про тэгирование. Нельзя просто присвоить тэг "комменты", иначе юзер, изменивший о4епятку в своём древнем комментарии сбросит нам кэш всего, где есть тэг "комменты" — не просто модуль с комментами и списки, а всё, где так или иначе они задействованы, включая счётчики их количества к контенту.
Задача не из лёгких, да и вообще не особо то и острая — на нормальных хостингах страницы и с сотней запросов открываются за сотые доли секунды. Если это кто то и реализует, то оставит себе любимому, ну а если вдруг это появится во всеми долгожданной двойке когда нибудь, то значит медведь в лесу сдох))