Fixed parse rule ordering issue.
Added parsing of negative integers.
Refactoring of specs and rules.