Migrate friendly rendering to experimental API types, widen to all Shelley-based eras, and refactor with per-feature helpers
friendlyTx and friendlyTxBody now take ShelleyBasedEra era and accept Exp.SignedTx era / Exp.UnsignedTx (ShelleyLedgerEra era). They are no longer parameterised by Exp.Era era (which is Conway-only) — the renderer works for Shelley through Conway tx and tx-body files, unblocking transaction view for pre-Conway tx files. friendlyTxBodyImpl reads every field directly from the ledger TxBody via lenses, so the old API's TxBodyContent constructor and getTxBodyContent are no longer used in this module. The body composes a list of pairs from per-feature helpers (validityRangePair, mintPairFor, collateralInputsPairFor, requiredSignersPairFor, referenceInputsPairFor, totalCollateralPairFor, returnCollateralPairFor, alonzoScriptWitnessPairsFor, conwayBodyPairsFor). Era-gated helpers return [Aeson.Pair] and emit [] in eras that don't have the field, so JSON keys for absent-in-this-era fields (e.g. "mint" in Shelley, "collateral inputs" in Mary) are omitted from the output rather than rendered as null. The eon-based dispatchers (forShelleyBasedEraInEon, AlonzoEraOnwards, ConwayEraOnwards, ...) are no longer used in this module. Also adds an Alonzo YAML golden test alongside the existing JSON golden to cover the YAML output path for that era. Relies on cardano-api 11.1.0.0 (PR IntersectMBO/cardano-api#1199), which widened Exp.SignedTx / Exp.UnsignedTx to all Shelley-based eras.