SharedDictionary: pre-parsed trie + raw data that can be shared across
multiple tokenizer instances via Arc, avoiding ~150 MB per-tokenizer
trie duplication.
buildLattice main loop: for each byte position, checks canBow, hasPreviousNode,
performs lexicon lookup, MeCab OOV, simple OOV, and inserts into lattice.