Leroy11:
I didn't check in-depth about the fare conditions, just the pricing.
ChrisMoss7: The price of 317 to jnb I got from Trailfinders, Travelbug offers the same for 314.
What about Canary Islands or Cap Verde Islands for African leg? There are always plenty of specials for Las Palmas for as little as $150 (sorry, I haven't got any handy). London bucket shops have usually plenty of them in shop windows and travel sections of main newspapers.