Obama takes on gun violence in New Orleans speech