Derive `Eq` and `Hash` for `ControlFlow`
There's really no reason for `ControlFlow` not to derive these traits. This is the part of #96416 that no one objected to, but that PR seems stale. The `Eq` derive was also [requested](https://rust-lang.zulipchat.com/#narrow/stream/219381-t-libs/topic/.60ControlFlow.3A.20Eq.60/near/
303610659) by `@lcnr` on Zulip to allow for pattern matching.
This change requires an FCP because it's insta-stable.
Closes #96416.