Alibaba takes $2.9 billion stake in food retailer