In a surprising decision on Wednesday, South Africa's star batsman AB de Villiers announced his retirement from international cricket with immediate effect.