1. Preheat the oven to 350°F (176°C) and grease a 9×9 inch baking pan, or line it with parchment paper. Set aside.
2. Put the butter and chocolate in the top of a double boiler (or in a metal pan set over a pot of boiling water) and stir until melted and smooth. Set aside.
3. Whisk together the sugar, vanilla extract and eggs until combined.
4. Whisk the cooled chocolate mixture into the egg mixture.
5. Combine the dry ingredients, then fold the dry ingredients into the wet ingredients until combined.
6. Spread the batter evenly into the prepared baking pan.
7. Bake brownies for 35-38 minutes or until a toothpick inserted comes out with moist crumbs sticking to it.
8. Remove brownies and allow to cool completely.
9. If frosting the brownies, combine all the ingredients for the frosting except for the powdered sugar in a small sauce pan. Heat mixture on low until cocoa is dissolved and incorporated, then turn heat to medium to bring to a boil. Boil for 3 minutes, stirring occasionally, then remove from heat and immediately pour into a heat-proof glass bowl. Whisk in the powdered sugar then spread frosting evenly over the brownies and allow to cool.
10. Cut brownies into squares.