Combine the sugar, flour, salt, and cocoa in a medium sized sauce pan and stir to mix well. Add the egg yolks, and stir to mix. Add the evaporated milk a little at a time, stirring to mix with the other ingredients until you get a paste type mixture. Pour the remaining canned milk into a two cup measuring cup, and add whole milk to make 2 cups. Add the butter and vanilla and stir. Cook the pie filling over medium heat, stirring constantly until the mixture thickens to a pudding consistancy. Remove from heat and let the pie filling cool completely. Once it cools to room temperature, smooth the filling into the pie shell, and top with cool whip, spreading to cover the filling. Garnish with shaved bits of chocolate, if desired. Refrigerate for at least one hour before serving - two hours is better, but we can never wait that long. Serve chilled.