2nd pass ch33

also codecs.open is used in the scripts instead of open
and testalltags.py will tell you which line is missing a tab space in
alltags.txt if you get a "list index out of range" error