Sam Curran ran out Keshav Maharaj from mid-on for 72 to seal England's innings win over South Africa in Port Elizabeth.