rice: zero-block aggregation — byte-exact match with libaec
The RICE encoder now aggregates consecutive zero blocks into a single
header with a block count, matching libaec's encoding. This produces
significantly more compact output for constant or near-constant data
(e.g. 2 bytes vs 4 bytes for 64 constant 8-bit samples).
Implements the CCSDS 121.0-B-3 §5.1 ROS (rest of segment) encoding:
FS(0..3) → 1..4 blocks
FS(4) → rest of segment
FS(n≥5) → n-1 blocks (shifted to avoid collision with ROS)
The interop test now verifies byte-exact compression match against
libaec for all vectors including constant data.