Apply the bitmask pattern from LightControlAction (#16039) to
climate::ControlAction. Parameterize on a uint16_t Fields bitmask
encoding which of the 10 templatable fields are configured. Unused
fields are elided via [[no_unique_address]] and skipped in play()
via if constexpr.
Also drop the unused `away` TEMPLATABLE_VALUE -- its YAML key is
cv.invalid("Use preset instead") and no caller of set_away exists
in the repo.
Per-instance: 20 B (mode only) to 28 B (mode + 2 temps), down from
~64-72 B baseline.