some code from a Algorithms and Data Structures class I took - includes Huffman coding, word counting with a hash table, and puzzle solving by state-space search