IVariableResolver is implemented by the user and used in
IMathParser.setVariableResolver(IVariableResolver) to enable the
Math Parser allow variables that are not defined before parse time.
if set, IVariableResolver will be used to return the values of variables
at evalutaion time. This is typically needed when the problem domain
is too large to define all possible variables ahead of time.
When IMathParser.setVariableResolver is set, parser will tolerate
undefined variables at parse time and it will invoke IVariableResolver
to retrieve variable values at evaluation time.