Pull changes from alternative symbol table implementation back into master

I guess we're going with this one, then