 0.1v18
	- added the ability to use a label name as a constant in an instruction - use syntax like 'ldc r1, @labelname'.
	- added absolute fixup code
	- added handling 8, 16 and 32 bit data (introduced with keywordsand the management of a data segment
		- introduce new keywords and change Program to have both an instruction queue and a data queue. when we see dataseg as a keyword, we parse the d8, d16 or d32 data items into Instructions and queue up the resulting instructions on the data queue. When we've successfully parsed the complete program, we move the 'data instructions' to the end of the data queue, after appending a 'dataseg' instruction to the instruction queue. we do the obvious fixups on addresses and compute the program's data segment from the supplied data.
