In a medium saucepan, warm 1 c. of heavy cream with the cocoa powder, whisking to blend cocoa.
Bring mixture to a boil, remove from heat and add in 3/4 c. of bittersweet or semisweet chocolate. Stir until smooth. Then add remaining cup of heavy cream, stirring until smooth. Pour mixture into a large bowl, scraping the saucepan to remove all chocolate. Set a mesh sieve over the bowl.
Warm the milk, sugar and salt in the same saucepan.
In a separate bowl, whisk yolks lightly. Slowly pour the warm milk, sugar and salt mixture into the egg yolks, whisking constantly, then pour the mixture back into the saucepan to cook. Constantly stir the mixture over medium heat with a heat resistant spatula, scraping the sides and bottom. The mixture will begin to thicken and coat the spatula (it should also reach 170 degrees on a thermometer). Remove immediately and pour through the mesh sieve into the chocolate mixture. Stir in vanilla.
Place the bowl over an ice bath to cool and then place in the refrigerator to chill thoroughly (approximately 25-30 minutes).
Pour mixture into ice cream maker according to the manufacture's instructions. Churn for 18-20 minutes. Add marshmallows, walnuts and chocolate chunks 2 minutes before the churning stops.
Store mixture in an air-tight freezer safe container and freeze for 4-6 hours before serving.