Max Verstappen won a thrilling Brazilian Formula One Grand Prix for Red Bull on Sunday with Pierre Gasly a surprise second for Toro Rosso.