Refactor fitsTx and findFittingFanoutTx for clarity
fitsTx now takes a Tracer and returns m Bool directly. Structural errors (script failures, TransactionInvalid, PParamsConversion) are logged internally via False <$ traceWith; transient misses (size exceeded, budget overrun) are silent pure False. Removes the Either return type and the empty-string sentinel that was used to distinguish the two. findLargestFitting returns Either () tx instead of Maybe tx, letting the call site use either instead of maybe. findFittingFanoutTx's where bindings are rewritten with combinators: findBest uses either + bool, mkTxM uses either to consolidate the duplicated traceWith + throwIO pair into a single handleErr, and fits collapses to a point-free partial application. Signed-off-by: Sasha Bogicevic <[email protected]>