MinecraftPlayerSkinBinding
Owner-thread retained binding for one asynchronously resolved player skin.
An adapter may complete network or cache work on any thread, but it publishes changed snapshots and invokes the sole observer only from MinecraftUiPlatform.refresh on the host owner thread. Closing is owner-thread confined and makes later queued completions inert.