More complete type-erasure for PreparedFunctor and Functor
Implement more complete/opaque 'custom' type-erasure for both PreparedFunctor
and Functor
-- this eliminates the templated implementation of an interface, and replaces the (implicit) vtable with an explicit table of function pointers which point at non-capturing lambda functions (which have no utterable type, and hence have improved symbol mangling and hiding)
Edited by Gerhard Raven