From some mail communication ...

i just have another concept of a new kernel in mind. This
would force _almost all_ code to be touched. Base idea: The kernel is a
very dumb thingy that starts all features and gets all things from
features. So it would call a function at startup of a feature:
feature::getCapabilities(). The feature may return a list like:
CanBeCommented to say that the comment feature - if avalible can be used
in this feature. Or it returns CanBeSearched to say that functions for the
fulltext tiki-search feature are avalible. I also would split the libs of
the features into parts: one file for output (displaying a wiki page ...)
one for input (editing a wiki page ...) and administration. This shall
avoid parsing time, which is at the moment the part in tiki-performance
that makes tiki that slow.

to be continued ...