Urban gardening is transforming South Africa's cityscapes, from Cape Town's rooftops to Johannesburg's balconies.