Added output of timing information for MaxFormat stages.
Added various functions, a type or two, and a special rule to the identifier casing table.
Operator spacing is now significantly smaerter, and properly supports negative number literals.
Identifier casing will now ignore parameter name definitions. References to those parameters will still be cased.
Refactored the way lastWasWhitespace works, and added a family of other types as well.
Operators immediately following a grouping character, such as [, no longer have a space output before them. This primarily is for negative integer literals, but effects other operators as well.
When adding a whitespace after an operator, the whitespace is merely requested of the formatter. If the formatter is asked to output a different whitespace immediately after the requested location, the originally requested whitespace will no longer be output. This prevents an additional space being output at the end of the line.