huffman-encoding
// weights are represented as value -> frequency pairs
let weights = vec!;
let huffman = new.unwrap;
let data = vec!;
// encode into a bit_vec::BitVec
let encoded = huffman.encode.unwrap;
// decode back into a Vec<String>
let decoded = huffman.decode_owned;