Contrastive Learning Falls Short: Improving Dense Retrieval with Cross-Encoder Listwise Distillation and Synthetic Data