Bring a small saucepan of water to boil. Combine 3oz. chopped chocolate and butter in a bowl that fits over the saucepan (make sure that the bottom of the bowl doesn't touch the water -- basically you are creating a double boiler). Melt the butter and chocolate by stirring occasionally until the mixture is smooth. Remove from heat and let cool slightly.
In the bowl of a stand mixer or a large bowl, whisk the yeast with warm milk, 1tbsp sugar and set aside for a few minutes. Then stir in the remaining sugar, espresso powder, egg replacer mixture (or the egg), vanilla and sea salt.
Stir in half of the flour and cocoa powder, then the melted chocolate and butter mixture and stir until well incorporated. Next add the remaining flour mixture and knead for 5 minutes.
The dough is quite sticky but comes together into a bowl. Place it in a lightly greased bowl. Cover and set aside to rise for 2~3 hours or until it looks quite puffy. My kitchen was quite cold and it took me about 3 hours to get to this stage. Start checking the progress from 11/2 hours just to make sure that it doesn't over-proof.
Lightly grease a 8½"x4½" loaf pan.
Stir in the chocolate chips and chopped nuts, if using. Using a spatula, fold the dough over itself in the bowl for about 30 seconds, then transfer it over to the buttered pan, pressing it down to spread to the corners. Cover with a greased plastic wrap and let rise for one hour.
Preheat the oven to 350°F.
Bake the bread for 35~40 minutes or until it sounds hollow when tapped on it. An instant-read thermometer should read 180°F in the center.
Remove from the oven and after 5 minutes remove the bread from the pan onto a wire rack to cool completely before slicing.