I believe the soap acts as an emulsifier helping the dye mix into the water more evenly, for a more uniform dye job.
I may be mistaken, but I think thats it.
I use plain tap water and I'm on a well (almost no iron and low TDS in general. My water is better than City water and without the chlorine and Fluoride.
I generally heat to boiling the water, remove from heat, add dye once boiling stops with a drop of Dawn, then drop my parts in fully submerged and let the water cool unless I don't want a Darker dye job. The lighter the color you want the shorter time you'll likely have to have the parts submerged. The darker you want, the longer you leave it in so the dye penetrates more.
you can also let the water cool down a bit before dropping in the parts if you want lighter color dye jobs. Its all a matter of experiment and keeping an active eye on the parts as like anodizing, results will vary from batch to batch...