* fix: Don't ignore the player's locale in message translation
* feature: Use PointersSupplier to save constructing a Pointers instance for every player
* fix: Don't use a custom implementation of Identity for players
We don't need to carry about this object for every player.
* chore: Stop using deprecated TranslationRegistry
* fix: Simplify TranslatableMapper and fix bugs
- The fallback string is not intended to be translated, so don't do that.
- Check if the string can be translated in the default locale before using the closest mapper as devs may have their own strings.
- Remove the hardcoded check for TranslationRegistry instance as devs (and us now) can use non-TranslationRegistry translator instances.