At least 800 people have died in a major heatwave that has swept across India, melting roads in New Delhi as temperatures neared 50 degrees Celsius (122 Fahrenheit).