A metafunction class is a certain form of metafunction representation
that enables higher-order metaprogramming. More precisely, it's a class
with a publicly-accessible nested Metafunction called apply.
Correspondingly, a metafunction class invocation is defined as invocation
of its nested apply metafunction.