Walmart apologizes for back-to-school gun display