Exploiting Local and Global Structure for Point Cloud Semantic Segmentation with Contextual Point Representations