Add kind "KBool" to let us distinguish SMTLib types Bool and BitVec 1.

This avoids generation of non-type-correct SMTLib output for proofs like:
 prove $ \x -> (x::SWord1) `shiftL` 1 .== 2*x