I don't think dylon would work for things like bras, as there is too much artificial fibre for the dye to take. However, t-shirts in natural fibres (e.g. cotton) come up a treat. I dyed many of DS's bodysuits navy when he was small, which covered up the big yelllow poo stains! The only caverat here, again, is that the stitching at the neck and cuffs is still going to be white, as polyester thread is used. Therefore a light colour would be best, unless you like the "statement" constrast stitching (with the aforemeantioned navy baby bodysuits, the contrasting stitching looked quite denimy and appealing!).
White clothes turn grey for two reasons: Firstly, because clothing manufacturers put shedloads of fluorescer on them. Fluorescer is what makes white clothes glow under UV lights in nightclubs etc. It makes white things look lovely and brilliant and glowing white in shops and so we buy them thinking they are a lovely snowy white. However, when you start washing clothes, the fluorescer washes away too and the clothes look grey. The second cause of greying is low-level dye transfer from other items in the wash. If you want your whites to stay white then you have to make sure you sort into loads whereby you are washing pure white things together only. Not hugely practical, I know, but... prevention may be better than cure.