Huffman encoding

HuffmanPG100 was generated (using huffman.py
from the tools directory) from Project
Gutenberg #100, the complete works of William
Shakespeare (the entire file, disclaimers and
all).

The code for huffman.py is sort of messy, but
could be cleaned up.

It includes another idea, for "contextual"
Huffman coding, with one Huffman tree per
preceding character. This _is_ more effective,
but each such tree takes around half a megabyte
of space, which is not something we want to
add into our already pretty large application.

Our version of Huffman coding includes a special
"stop" token, since otherwise padding to a fixed
length would become a problem.

It discards case information by uppercasing
everything.