Bank of America to buy back $5 billion in stock