Refactor the minimum frequency node detection
Refactor the minimum frequency node detection

Instead of a brute force search on all nodes in the huffman tree for the
node with smallest frequency, a heap data structure is used which offers
better performance guarantees.

k13n/huffman