AB de Villiers hits fastest-ever century in just 31 balls as South Africa post second highest total in one-day international history in 148-run win over West Indies