I've also thought about some modifications to the program. I know I'll never do them, so I thought I'd at least record them here. I'd like to make it so that it could write the frequency table to a file, so that, if you're doing something really large, you only have to generate the table once, and then you can do multiple output runs on the same table. This occurred to me when I found out that it took something on the order of 1/2 hour to process a 2 MB input file.
Another thing that would be nice would be the option of allowing multiple input files, so I don't have to go through the trouble of concatenating them all. It's not that big of a deal, but it's still one more step.