refactor(utils): add LevelArgs::resolve to trim backend constructors
Every backend with a compression level had the same 3-line pattern in
its new(): instantiate validator, pull args.level_args.level.level,
clamp. Fold that into LevelArgs::resolve(&validator) so the six
level-aware backends (gzip, xz, bzip2, zstd, brotli, lzma) get cleaner
single-expression constructors.