Use Pimpl idiom and explicit instantiation of templates to make it easy to swap out Symbol Table implementations.