In a small bowl whisk the cocoa, cornstarch, salt and half-and-half.
In a medium sauce pan heat the chocolate, sugar, and milk until the chocolate has melted.
Pour the half-and-half mixture into the chocolate mixture and heat, stirring constantly with a whisk until the mixture suddenly thickens.
Remove from heat and whisk in the butter and vanilla.
Pour the pudding into a bowl and press a piece of plastic wrap against the surface of the pudding to prevent a skin from forming. Refrigerate till completely chilled for several hours or overnight.
When ready to serve whisk pudding and fill individual dessert bowls.