This is a follow-on of my "Grade School Crypto" introduction to the fundamentals of cryptography. While constructing examples from my class, I came across a nice little web site called "Count On," that includes a page of basic crypto tools.
The Count On site isn't perfect, but the monoalphabetic and frequency analyses work pretty well. The polyalphabetic stuff is pretty fragile. I managed to get the Vigenere stuff to work, more or less. The Enigma seems to operate, but the explanation has flaws, and it seems to spit out special characters as well as alphabetic ones.