South Africa gain advantage over India, sweat on injured Steyn