Carcinogens, how do they work?
"So my question is, in general, how many different flavors of carcinogens are there?"
As mentioned in the comments, almost all carcinogens act by damaging DNA.  In general there are three ways to do this:

Alkylation, a good example is pyridine.  These compounds covalently modify the DNA and either cause a mutation by misincorporation during DNA replication (where the wrong base is incorporated across from the alkylated base), or by generation of double strand breaks during DNA replication that result in a mutations during the repair process (the details of which are not in-scope here).

Intercalation, my favourite example being ethidium bromide.  These compounds literally insert themselves between the bases of the double helix, where they cause "fork collapse" during DNA replication, and the ensuing repair process mutates the DNA.

Ionization through radicals.  Yes, carcinogens can generate radicals that will generate DNA damage.  A good example is doxorubicin, which is a highly effective chemotherapeutic, but also a carcinogen in its own right.  Some heavy metals can also generate radicals under the right circumstances.  These compounds typically oxidize the bases of DNA, and result in broad misincorporation during DNA replication.  Radicals can also result in breakage of the phosphodiester backbone, which cause mutations during repair. This mechanism is taken advantage of in some methods for studying the primary and secondary structure of RNA molecules, and in "foot printing" methods.  Incidentally, it is this mechanism of carcinogenesis that causes antioxidants to be associated with the prevention of cancer.  Compounds like vitamin C soak up the radicals generated by the carcinogen (or radiation), thereby preventing the damage from occurring.

An interesting point: pyrimidine dimers, which are generated whenever you get a sunburn, are a carcinogenic form of DNA damage somewhere between the ionization and alkylation mechanisms.  UV light induces a redox reaction that results in covalent linkage of two neighboring pyrimidines.  A dedicated repair process can cause a mutation at the site of the dimer.

However, the take home point is that the DNA damage itself is not usually the mechanism of mutation!  Mutation occurs when the damage is repaired, either as part of a dedicated repair process, or by (non)homologous recombination after a stall in DNA replication.

I hope this answers your question.  It is a complicated subject, and I doubt I covered everything here.