All instances of parameters of type enum bitset_opts are now of
type enum_bitset_opts, to conform to the C Standard, and similarly
for enum_bitset_type.
(bitset): Now points to a union, not to a struct.
All instances of "struct bitset_struct *" replaced with "bitset".
(bitset_and_or_, bitset_andn_or_, bitset_or_and_): New decls.
struct bitset_vtable.list, struct bitset_vtable.list_reverse,
bitset_count_, bitset_next, bitset_prev, bitset_first, bitset_last,
bitset_count_):
Use bitset_bindex, not int or unsigned int or size_t, to count bits.
(BITSET_BINDEX_MAX, BITSET_WINDEX_MAX, BITSET_SIZE_MAX): New macros.
(BITSET_INDEX_MAX): Remove. It wasn't right, since it assumed that
sizeof (bitset_word) == sizeof (bitset_windex). All uses changed
to BITSET_WINDEX_MAX.
size_t; the old version tried to do this but casted improperly.
(bitset_bindex, bitset_windex): Now size_t, not unsigned long.
(bitset_test): Now returns int, not unsigned long.