fix prefix operator precedence in expression AST

In `typeof a + b`, parse the `a` and stop; don't allow just any expression as the operand.  However, we must be sure to still allow `typeof typeof a`, `typeof -a` and `-typeof a`.

Stringification (and therefore behavior) is correct either way because it trusts the parse tree and doesn't insert parentheses.
fix infix operator precedence

In `a * b + c`, don't parse `b + c` as the right operand by only allowing higher-precedence operators.

Parse `a * b * c` left-associatively.

Stringification (and therefore behavior) is correct either way because it trusts the parse tree and doesn't insert parentheses.
Merge pull request #204 from meteor/operators

Fix operator precedence in expression AST