Add a new SymbolTable module for interned string identifiers.
The module implements a bidirectional mapping between strings and
Symbol IDs using a HashMap. Key functionality includes:
- intern(): Add a string to the table and return its Symbol ID
- get(): Look up a string by Symbol ID
- resolve(): Get the original string for a Symbol ID
- intern_pair() and intern_coords(): Helper functions for structured
data interning
The implementation includes unit tests to verify correct behavior.
Co-Authored-By: fiddlerwoaroof/git-smart-commit (unsloth/Qwen3.5-35B-A3B-GGUF:Q5_K_M)