After much staring, stepping and grepping, I finally produced a solution for the partial problem defined in (Issue 2074, "--extensions '' doesn't work.) which is part of (Issue 2044, Fully customizable external diff invocations).
It's not bad(it works for very small values of functional), but also not very good, since it is rather agricultural and I'm not sure how to handle deprecation, but, it's a start.
However it only deals with one part of the problem and not with the issue of giving the user a wormhole to call any diff function they want to use, however they want to.
To be continued... ;-)