Preheat oven to 350. Place paper baking cups into muffin pan and coat with cooking spray.
Beat butter at medium speed until fluffy. Gradually add sugar, beating well. Add eggs, 1 at a time, beating just until blended.
Combine flour, cocoa, and salt. Stir together sour cream and baking soda. Add flour mixture to butter mixture alternately with sour cream mixture. Beginning and ending with flour mixture. Beat at low speed just until blended after each addition. Stir in 1/2 of chopped chocolate and nuts if desired.
Spoon batter into a 12 cup muffin tin or 50 mini-muffins with paper liners, filing 2/3s full.
Bake for 10 minutes for mini, 18-20 minutes if regular or until a wooden toothpick inserted in center comes out clean. Remove from pan to a wire rack and cool completely.
Beat cream cheese, slightly softened butter, marshmallow creme and vanilla with an electric mixer until creamy. Gradually add powdered sugar , beating until smooth. Pipe marshmallow frosting on to cupcakes and sprinkle with chocolate. Add pecans to top. If your butter is too soft it makes the frosting harder to work with. Refrigerate to set frosting.