Preheat oven to 350°F. Line three 9-inch cake pans with parchment paper circles and spray with baking spray. Set aside.
Add the chopped chocolate to a medium bowl, then pour the water over it and stir gently until the chocolate is melted and smooth. Set aside to cool slightly.
In a large bowl, cream butter and sugar together using a stand mixer or electric mixer for about 4 minutes until light.
Separate egg whites from yolks, reserving the egg whites in a medium bowl. Add the yolks one at a time to the butter and sugar, mixing after each addition.
Add the melted chocolate and vanilla, and mix until combined. Scrape the sides and bottom of the bowl and mix again.
Add the flour, baking soda, and salt alternately with the buttermilk. Mix just until combined after each addition, making sure to scrape the sides and bottom of the bowl. I have found that if I start by adding about ¾ cup of the flour along with all of the baking soda and salt, then about ⅓ cup of the buttermilk, then more of the flour and buttermilk and so on, I don't need to sift the dry ingredients together beforehand and dirty an extra bowl.
Beat egg whites until stiff peaks form, then gently fold into the batter.
Divide the cake batter evenly between three 9-inch round cake pans and bake 24-28 minutes at 350 degrees F until a toothpick inserted into the center of the cakes comes out with just a few crumbs on it. Cool completely on wire racks.
For the frosting, heat the granulated sugar, brown sugar, evaporated milk, butter, and egg yolks in a medium saucepan over medium heat until thick and golden brown, about 5 minutes. Be sure to stir constantly so as not to scramble the eggs. Remove from the heat and add coconut, pecans, and vanilla. The frosting will continue to thicken as it cools. Cool for at least 30 minutes until thick enough to spread before assembling the cake.
To assemble the cake, set the first cake layer on a cake plate and frost just the top with ⅓ of the frosting. Repeat with the next two layers, leaving the sides of the cake bare. If you want to frost the outside of the cake, you will need to make a double batch of the frosting.