There is an easy and cheap way to try your hand at dyeing pure wool using supermarket ingredients, ideal for fleece, roving and spun yarn.
Queen makes a small pack of 4 tiny bottles of food dye for under 3 dollars. With that and some white vinegar ( cheap seems to work just as well as expensive), hot water and a bucket, you are all set to go.
Pre-soak your fibres or yarn in soapy water (dishwashing liquid works well), so that the dye takes up. Prepare your bucket with hot water and a dollop of vinegar, probably half a litre to a bucket, and then add your dyes. A wooden spoon for stirring is handy. The dye packs have 4 colours: red, blue and yellow, and green. You can mix the dye well for an all over colour, or just let the dye float in the water for a rainbow effect or multi-coloured effect. Add your fiber/yarn and watch it soak up the colour, literally, as the water in the bucket becomes clear. Be careful not to agitate your fibers, or they will felt.
Some dyers say that you need to boil your fibers - I have found that heat is the key, and a hot sunny SA day is enough to set the dye, though I must confess I now use a microwave dedicated for that purpose - a 10 minute zap seems to be all it needs. You then carefully rinse out the dyed item by soaking in water that gets gradually cooler in temperature until the water runs clear - if it doesn't the dye hasn't set. Hang skeins to dry out of the sun, the shower cubicle is really handy for this, and I use a sweater rack for fleece. The colours appear to last as long as other dyes.
This works well on protein fibers like wool and silk as well as nylon, and produces lovely bright colours as well as subtle shades. I doubt it would work on cotton, rayon or artificial fibers. It also overdyes other brands of dyes. You can space dye, rainbow dye, and do pretty much anything that can be done with liquid chemical dyes; there is a wealth of info out there on the web. There is also a small recipe chart on the side of the dye pack to help get you started mixing colours. A large half litre bottle of food dye will set you back under $10.00, and last for ages. The larger supermarkets often have a range of 50ml bottles in different colours, allowing you to experiment without breaking the bank.
As to whether there is less harm in using food dyes? I'm not a scientist, but I would handle them with caution, and wouldn't use food containers as dye baths. And with that proviso, have fun and enjoy experimenting!