Use 32 bit blocks for now.  Otherwise (1 << pos) in the unset function
yields strange behavior, for instance ~(1 << 0) evaluates as the bit
pattern
0111111111111111111111111111111101111111111111111111111111111111
use gdb for debugging and no assert macros by default
More informative output during computation