Neural Sheaf Diffusion: A Topological Perspective on Heterophily and Oversmoothing in GNNs