TSPRank: Bridging Pairwise and Listwise Methods with a Bilinear Travelling Salesman Model