Synthesized protocol conformance for actor-isolated types

This is very similar to something posted a few threads down that you may find interesting: `func == ` vs MainActor

In Swift 6.2 you can conform to @MainActor Equatable to allow for this. This makes it so that you are not allowed to invoke == unless you are on the main actor. Until then you can just use @preconcurrency Equatable to silence the warning/error, but this will crash if you ever invoke == in a non-main actor context.