Theory of Giant Magnetoresistance