Cameron Smith storms past Rory McIlroy to win The Open