The Kimberlites and related rocks of the Kuruman Kimberlite Province, Kaapvaal Craton, South Africa