England captain Joe Root was bowled by Kagiso Rabada for just 27 in the first innings of the third Test against South Africa in Port Elizabeth.