As Roger Federer prepares to retire from top-level tennis, BBC Sport looks at the best moments of his astonishing career