Token parser improvements

Eliminated the need for whitespace to seperate tokens. Nearly very
elegant, except for 2 little hacks to make -ve numbers work. :-/