I've pondered with the idea of making these as well. Here is how would imagine they could be done:
First off, you would need an array of all units that are within a certain radius of the grenades. If we had VBS1, we could create triggers and this would be easy. However, we can't do that, so our only options are: (a) have the mission editor place a trigger of the desired radius, or (b) add every unit in the mission to an array, and when the time comes, find out which ones are close enough to the grenade to be affected.
(a) would probably run better, and you wouldn't have to worry about weird things like units created after the start of the mission, but there might be problems if two grenades are thrown at the same time (or close to it). So I'm not sure which method would work best.
Anyway, so once the grenade is thrown, and an array of all units within it's effective radius has been made, this is how I think you could do the effects:
Flashbang: Use the getdir command to see how much units are facing the grenade when it goes off. You could then scale the intensity/duration of the effects depending on how much they are facing it. With players, use a fadeout (white) as you suggested, along with fadesound and a nice ringing of the ears sound via playsound. I'm not so sure what to do for the AI, except setskill to 0. Possibly for both AI and players, setdammage them to a negative number, which then makes their aim wobble terribly. Setskill and setdammage back to original values when the effect is over, or perhaps smoothly transition back.
WP: Don't know a whole lot about how these work, but your suggestion about them being like regular 'nades, only with added drop effects might be good.
CS Gas: Config like a regular smoke grenade. All units within the effective radius could just be switchmoved into a custom animation that shows them coughing, vomiting, etc. Perhaps this anim could occur at random intervals, and in the meantime they could be setdammaged to a negative number, as with flashbangs. Of course, if you were going to make these, you would also want to make a gasmask addon that, when equipped, would render the unit immune to these grenades.
Anyway, those are my ideas on how they could be done.