type writer type reader val writer_create : unit -> writer val write_bit : writer -> bool -> unit val write_bits : writer -> Z.t -> int -> unit val writer_to_bytes : writer -> bytes val writer_pos : writer -> int val reader_create : bytes -> reader val read_bit : reader -> bool val read_bits : reader -> int -> Z.t val reader_pos : reader -> int val count_zero_bits_until_one : reader -> int