Who is the best tennis player of all time?

To name the best tennis player of all time is not a simple answer, but there seems to be wide agreement that the short list includes Roger Federer, Novak Djokovic, and Rafael Nadal.  All three are very close to each other in total Grand Slam titles, and have competitive records against each other.  They are all head and shoulders above every other player of their era, as well as players from past eras when it comes to win/loss records.