Ashton Eaton sets world record in decathlon