A Survey of Pun Generation: Datasets, Evaluations and Methodologies