U.S. stocks shook off a weak start and ended slightly higher, enough to break a four-week losing streak. The S&P 500 edged up ...