[Profiler][Trivial] Add hashing struct for pairs and tuples. (#87668)
There is a fairly simple and commonly used hash_combine in c10/util; however in order to use it in a map we need to wrap it in a hashing struct. By defining template functions we also get recursive unpacking for free. (A later PR will want to hash a `tuple<tuple<T0, T1>, tuple<T0, T1>>`)
Differential Revision: [D40666359](https://our.internmc.facebook.com/intern/diff/D40666359/)
Pull Request resolved: https://github.com/pytorch/pytorch/pull/87668
Approved by: https://github.com/slgong-fb