Walgreens to buy back $2 billion in shares