every request struct, CoinApiRequest impl, and response alias now lives in its own file under src/operation/, and the group modules (metadata, metrics, ohlcv, orderbooks, quotes, trades, options) keep only their client structs and methods.
Details:
- get_symbol_by_exchange_symbol returns component::Symbol directly; no response alias needed.
- active/historical/unmapped symbols each get their own response alias (all Vec) instead of sharing ListSymbolsResponse.
- ListV2MetricsHistoryResponse/ListV2MetricsListingResponse are defined once and shared across v2 files.
- tests updated to import request types from coinapi_rs::operation.