Move operator definitions out of global state

A new class, DDMathOperatorSet, defines a collection of operators.  There is a “default” instance, but you can allocate your own instances to customize the sets of operators used in different contexts.  This has several side effects:

- The interpretation of “%” as either percent or modulo can now be customized at runtime instead of compiletime
- Tokenization can be much more lenient in what characters are allowed in function names