The Many Faces of Robustness: A Critical Analysis of Out-of-Distribution Generalization