Aded hexadecimal number parsing

Will need to look at optimising this, it's quite slow.
Temporary step backwards

Instead of combining tokens and string data (like variable names) in the token stream, I'm instead going to change the token stream into Longs and build the index number / key of a variable/label/property name into the token itself (i.e. &HXXYYYYYY where XX is the token identifier and YYYYYY is the index into the array of strings.

This should better help us transition from an initial parsing of the source code into tokens into an optimised, assembler-ready token stream (lists flattened, includes processed &c.)
Fixing parser up to use combined tokens with data field

Ironically, just how I started out! I've gone in circles. But at least I have a clearer idea of what I'm doing and a parser that works effectively.