improve dict::MapStrToInt to allow using it for string interning; switch StringInternet to use dict::MapStrToInt, which further optimizes things by using a single allocator for allocating interned strings