Fixed parsing of some numeric expressions

Parsing of allforms of 0 is now correct.
Parsing of subtraction works.

But parsing of unary operators is not right. Tests have been marked as
pending.
Unary operator precedence is now correct

-20 + 3 now gets parsed correctly as (-20) + 3

Earlier it was incorrectly parsed as -(20 + 3)

Also corrected one of the unit test cases.
added more test cases for numeric expressions
minor: used shorter expressions in tests
minor refactoring

Used a helper function instead of a long expression
added a complex unit test for numeric expr
Respect operator precedence while parsing

Parser now respects operator precedence

Added unit tests to check precedence.
Updated README to mention Java 8