20-time Grand Slam champion Roger Federer announces retirement from pro tennis