Forbes ranks Roger Federer top athlete