Preheat oven to 350 degrees F. In a small saucepan melt unsweetened chocolate and butter over low heat, stirring occasionally. Remove from heat; cool.
In a medium mixing bowl stir together flour, walnuts or pecans, and baking powder; set aside.
In a large mixing bowl stir together chocolate mixture and the 1-1/2 cups sugar. Add the 3 eggs and the 1 teaspoon vanilla. Lightly beat mixture with a wooden spoon just until combined. (Do not overbeat or brownies will rise during baking, then fall and crack.) Stir in flour mixture. Pour batter into a greased and lightly floured 8x8x2-inch baking pan; spread to edges. Bake for 40 minutes.
Meanwhile, for topping in a small saucepan melt the 3 ounces semisweet or bittersweet chocolate over low heat, stirring occasionally; cool slightly. In a medium mixing bowl beat cream cheese with an electric mixer on medium speed for 30 seconds or until softened. Add melted semisweet or bittersweet chocolate, the 1 egg, the 1/4 cup sugar, milk, and the 1/2 teaspoon vanilla. Beat until combined.
Carefully spread topping evenly over hot brownies. Bake about 10 minutes more or until topping is set. Cool in pan on a wire rack. Cover and chill at least 2 hours.
To serve, cut brownies into triangles or bars. If desired, in a small saucepan melt 2 ounces semisweet chocolate and shortening; drizzle over brownies and onto plate. Garnish with raspberries, if desired. Cover and refrigerate to store. Makes 16.