Require brackets to do maths

See #915

This continues that work, taking it further, so that brackets are required for all operations to occur (not just '/')

If you have brackets and an operation, e.g. `1 + (1 * 1)` then it is output literal. To operate on the `1*1` use double brackets. The rule can be summed up as - add un-needed brackets to make it treat the content as maths.

things to do:
1. I reverted the unit outputting. I want to add a "strictUnits" mode that is on by default and throws an exception if the unit to output doens't make sense. When the option is off it will behave as it does in this pull request
2. add a strictMaths option that is on by default - so that this is a breaking change but people have a way back in the short term.

Please look carefully at the unit tests, and let me know what you think.