Subset port of ref/hare/crypto/math/bits.ha: the 32-bit rotations sha256's message schedule and compression need. The wider bits.ha surface (rotl64/rotr64, the constant-time compare family, xor) lands as callers arrive. rotr32 is exercised end-to-end by the sha256 NIST digest vectors, so no standalone @test ships here.