France have clinched their second World Cup title with a 4-2 win over Croatia in a dramatic final in Moscow.