In #215 I had to disable the transient-snes-mpfaof90-region test case in the transient_snes_mpfaof90 demo regression suite because it uses some functions that I had as part of the new material properties / characteristic curves abstractions:
TDySetCharacteristicCurveVanGenuchtenValuesLocal
TDySetCharacteristicCurveMualemValuesLocal
We need to support coupling with other models (like PFlotran and E3SM's land models), but this is not the way to do it. Rather, we need to extend our support for C functions that provide contexts (e.g. MaterialPropsSetPorosity) to be available in Fortran as well. This can be done using trickery similar to that used in PETSc for passing optional contextual data to solvers (to evaluate residuals and Jacobians, for example).