For #1, a small investment in Retayne may save the fabric from being thrown away. If a fabric bleeds, I wash it in Retayne and then test it again; occasionally it needs a second washing in Retayne. Retayne permanently sets dye so that it stops bleeding. Here is a link to Retayne on Amazon, but there are many other places to purchase it. Many quilt shops carry it now.
http://www.amazon.com/Craft-Retayne-.../dp/B001HZOZGW
(The size I linked will treat many, many yards of fabric.)
Also, instead of pre-washing a fabric I just test a small piece of anything I suspect might not be colorfast. That way I need to pre-wash only "bleeders"; saves a ton of time.