Beginning the work for a symbol table; most of the underlying design is rubbish