A type that inherits from this abstract type should supply methods for evaluating a map that takes numVariables (+ numParameters if the system is parametric) inputs and produces numFunctions outputs and its jacobian.
Note for developers: it suffices to override the versions of evaluate and evaluateJacobian that take (System,Matrix,Matrix) as arguments.
The object System is a type, with ancestor classes MutableHashTable < HashTable < Thing.