Implementation of huffman coding
This implementation has large overhead. The huffman-tree is written with to writer in a very verbose way so that it is much larger than necessary. Other than that this implementation is a true huffman coding with no unnecessary bits. This is done by writing each individual bit one by one.