I received some pretty stained diapers for my lo, and I soaked them in hot water and baby oxyclean, then set them out in the sun all day. Stains all went away. I had to rinse a lot to get out the suds, but my diapers seriously look nearly new. With natural fibers, I wouldn't be afraid to use a little bleach on used diapers. I use about two table spoons every month or so in a hot wash, to kill nasties and keep everything fresh and bright.
PUL covers I would wash on warm and set in the sun for sanitizing and stain-lifting.
Detergents are tricky because some work really well for some people and not for others. Some mamas swear by Tide powder. The pinstripes and polkadot list is pretty extensive, but start with any additive-free detergent and go from there. If the diapers don't look/smell clean, you just have to tweak. There's a learning curve, but once you figure out what works for you, it's pretty easy from there.
I personally use my own homemade laundry detergent and it works really well for me. I do a cold rinse, a warm or hot wash with two tablespoons of laundry detergent, and a cold rinse. Once a month I add a tad bleach, and sometimes I have to do an extra rinse here or there, and occasionally I'll do a load with Tide if I feel like it. I dry my fitteds and prefolds and AIOs in the dryer on regular heat, and hang my covers to air dry.
If you encounter stinkies, don't get too frustrated! There are lots of troubleshooting techniques. I wish I had known about them when I was cloth diapering my son!
Hope this helps
