A Primer on Contrastive Pretraining in Language Processing: Methods, Lessons Learned and Perspectives