[Pitch #2] Add `isKnownIdentical` Method for Quick Comparisons to `Equatable`

Hmm… I would maybe start with a comment from the previous pitch:

I do want to mostly keep this pitch review "out of the weeds" on tactical discussion over implementation details… but it could also be relevant to consider a "case study" specifically as an example of when a library maintainer might want or need a custom isKnownIdentical that is not memcmp.

One place we could start is our "prior art": the _isIdentical method on String:

AFAIK the only stored instance property on String is _guts:

But our _isIdentical is not memcmp over _guts… it's actually comparing value equality over _StringGuts.rawBits:

Which is itself the value of _StringObject.rawBits:

But wait… that's the 64-bit version of rawBits. We have a different version of rawBits for 32-bit:

Why is all that conditional logic and custom code needed? I have no idea… but I know I don't want to break it.

To go back to our String._isIdentical method… an approach on memcmp would compare the bytes of _StringObject directly without respecting all the work we built on rawBits.

If memcmp on String ever returned a "false positive" — returning true for identity equality when == value equality returns false — that would be considered a bug. If memcmp on String never returned a false positive but did return false negatives — returning false when the existing production logic on _isIdentical returns true — that would not exactly be a "bug"… but it would indicate that our library maintainer does know how to override isKnownIdentical as an impactful and non-trivial improvement over a default implementation on memcmp.

I'm not sure what to say… an important opinion of this pitch is that isKnownIdentical must return in constant time and meaningfully faster than value equality. It's trending to a "circular" argument in the sense that I am saying "this is the way" it should be "because the pitch says so"… but that's a strong opinion we are making for now. If a type does not have any ability to answer isKnownIdentical without a comparison equal in effort to normal value equality, then that type should return nil.