There are plenty of options in Jo'burg. There is a sameness about the majority of courses never the less they are all good days out. In order of preference I would list Glendower, Royal Joburg East, Johannesburg CC Woodmead, Randpark, Parkview, Royal Joburg West, Bryanston CC, Randpark Windsor, Joburg CC Woodlands, Killarney, Wanderers. There is also The River Club which I never got around to playing.
Blair Atholl which is Gary Player's ranch was just opening as I was leaving the last time, he speaks very highly about. It is on the outskirts of the city. In Pretoria there is Pretoria CC and onwards to Pecanwood, a Nicklaus 1 hour from the city and further onwards to Sun City which is about a 2.5 hour drive.
As for touristy stuff there is very little out of the ordinary but a township tour to Soweto would be very interesting.