0.4.1

Patch release for the Phase 3-6 wire-shape corrections from chain's
reply at siblings-comms/unity-sdk/phase-3-6-wire-shapes-and-custodial-
confirmed.md.

Fixed:
- SwapPool / AmmPool DTOs: flat token field pairs
  (token_in_namespace + token_in_name etc) instead of nested TokenId.
- SwapPool: lifetime fields renamed to lifetime_input_burned /
  lifetime_output_minted.
- AmmPool: dropped unconfirmed lifetime fields.
- All Phase 3-6 request bodies: flat token fields.
- CreateAmmPoolAsync: dropped initial_liquidity_a/b which the chain
  doesn't accept.

Breaking:
- PurchaseCapabilityAsync now requires adminKeyHex + adminSignatureHex
  parameters (no custodial mode). Caller produces these externally
  via velocity-wallet or a future Borsh+Ed25519+Blake3 stack.