Implementing a different orElse
- This should prevent the recursion of going between A-B-A-etc
Making sure that we can match multiple values in brackets
- Adding a test around `(x x)` - x in this case being a decimal number.
Initial recursive implementation.
- Lots to do, but it's a start!
Adding better tests around nesting
Small tweak to make sure that don't modify result
Adding a more complex test around parser.
Slowly moving to nesting values.