'A huge shock': Catherine, Princess of Wales, announces she has cancer