Partial rewrote of AST parser - More straightforward approach for handling right-to-left associativity - More straightforward approach to handling unary operators - Improved handling of brackets

So far causing one test failure but fixing #5784, #5795, #5799, #5810 and a bunch of other problems