Expand type handling - currently no major change, other than more complex code - preparing for arrays, records and pointers