Preheat oven to 350 degrees. Grease and flour a 9 X 13 or a 10 X 16 baking pan. If you prefer a thinner cake, use the larger pan. You may also use three 9″ pans and frost between the layers.
Sift two cups flour and then measure again for accuracy. Stir in baking soda and salt and set aside. Microwave chocolate in the water until chocolate is melted, about 1 minute and 30 seconds, depending on microwave. Remove from microwave and stir well, set aside.
Separate eggs. Beat egg whites until stiff peaks form and set aside.
Using a hand mixer, beat butter and sugar just until combined. Add egg yolks one at a time, mixing after each addition.
Slowly add melted chocolate to butter mixture while mixing. Scrape sides of bowl with spatula and mix well. Add vanilla and mix well.
Add flour mixture alternately with buttermilk, beginning and ending with flour mixture. DO NOT USE A MIXER ON THIS PART!! Stir by hand using a spatula or spoon. Once mixed, you may use your hand mixer for no more than 10-20 seconds, just to make sure batter is mixed well.
Fold in beaten egg whites. Pour into prepared pan and bake for 30 to 40 minutes or until toothpick inserted in center comes out clean.
FOR THE FROSTING: Melt butter in heavy saucepan. Add milk, sugar, vanilla and egg yolks and cook over medium heat for about 12 minutes, stirring constantly until thickened. Remove from heat and add coconut and pecans. Stir until combined. Pour warm frosting over cooled cake.
SPECIAL NOTE: If you’re making the three 9″ layers, you’ll want to let the frosting cool a bit to thicken.