Stocks rallied heading into the weekend, despite lousy results from Amazon. Solid earnings from Apple and oil giants Chevron and Exxon Mobil were enough to counter the weak outlook from the retail and cloud giant.