Implemented block reordering.
Changed BitVector to use individual bytes as the underlying storage.
Added Huffman coding implementation.