msb function and perhaps make putBit work, unaligned puts and gets, Data.Bits.Coding

Give this a look?