In a medium mixing bowl whisk together the flour, sugar, salt. Add the butter. Place in the freezer for 30 minutes. Transfer mixture into the bowl of a food processor and pulse 8 to 12 times, until the butter is the size of peas. With the food processor running, gradually pour the water down the feed tube and pulse the machine until the dough begins to form a ball. Turn out onto a floured surface and gently knead into a ball. Form a disc and wrap in plastic wrap. Refrigerate for 30 minutes.
Roll the round of dough on a well-floured surface into a circle big enough to fit a 9-inch pie dish. Let the dough rest for 5 minutes. Place into the bottom of the pie dish. Using a fork, prick the bottom of the crust about 20 times. Trim the edges so that there is ½-inch overhang. Flute the edge or press with a fork. Place in the freezer for 15 minutes.
In a large bowl combine the chocolate, butter and vanilla. Place a mesh sieve over top and set aside.
To make the filling, in a medium heavy bottomed saucepan set over medium-low heat, add the milk, 1½ cups heavy cream, sugar, and salt. Heat until the sugar has dissolved and the mixture is warm, and gently bubbling. Turn heat off, add the coconut and allow to steep for 30 minutes.
Preheat oven to 375 degrees F.
Line the pie dough with parchment paper, then fill with pie weights or dried rice/beans. Place in the oven and bake for 25 minutes, then remove from the oven and carefully remove the weights and parchment. Return to the oven the oven to bake for an additional 10 minutes or until the bottom is set and the edges are golden brown in color.
Remove the crust from the oven and allow to cool completely before filling.
Meanwhile, in a medium heatproof bowl, whisk together the remaining ½ cup of heavy cream, cornstarch, and the egg yolks until a thick paste forms.
Return the saucepan to the stovetop over medium heat and gently warm. Once the mixture is warm, carefully temper the egg yolks by slowly drizzling the warm mixture into the medium bowl, whisking continuously to prevent the eggs from scrambling. It will take about 5 minutes to incorporate the mixture.
Return the mixture to the stovetop and heat until it reaches 165 degrees on an instant read thermometer. Pour over the sieve to remove the coconut and any overcooked pieces of egg that make have formed. Remove the sieve and whisk the milk into the chocolate until melted. Cover with plastic wrap and chill for 1 hour.
Spread into the cooled pice crust. Cover with plastic wrap, directly on the pudding. Chill in the refrigerator for 3 hours or overnight until fully set. It should be firm to the touch.
Before serving, remove from the refrigerator.
To prepare the topping, in a large mixing bowl with a hand mixer (or a bowl of a stand mixer), add ONLY the thick, chilled cream part of the canned coconut milk. Do not add any liquid. Beat for 5 minutes on high, then add the heavy cream, powdered sugar, and vanilla extract. Gradually turn up the speed and beat until stiff peaks form. Spread over the top of the chilled pie, top with toasted coconut. Enjoy immediately.