Mix the cream cheese at medium speed for several minutes, or until very smooth. Add the sugar, and mix quite well. Add the vanilla. Add the eggs, one at a time, but mix only until smooth. If you are making the all-chocolate or all-nut version, add the chocolate or nuts now, and mix well. Then pour into the prepared pan, and rotate the pan, back and forth, with two hands, on the counter to level the top of the batter.
If you are making the chocolate and white version, remove 1/3 of the batter to a small bowl. Then mix the 2 ounces of melted chocolate into the 1/3 batter, and mix well. Put 5 spoons of chocolate batter in the prepared pan, cover with white batter, put 5 more spoons of chocolate, cover with remaining white batter, and end with 5 or 6 spoons of chocolate on top. Rotate the pan, back and forth, with two hands, on the counter to level the top of the batter.
Bake at 350°F. (in the water bath) for 90 minutes.
Allow the cake to cool to room temperature. Invert onto a rack, cover the bottom with the graham cracker crumbs, and invert back onto a serving plate. Chill until firm. Cover with plastic or foil. This cake freezes well for up to 6 months or keeps in the refrigerator for 1 week. If you are freezing the cake, be sure to wrap it first in plastic wrap, then in heavy duty aluminum foil. Defrost in the refrigerator, discard the wrappings.
Cut cheesecake with dental floss to avoid breaking it at the edges. Start by cutting a 30" piece of floss, holding it tightly with one end wrapped around each hand, and cutting straight down from the top of the cake to the serving plate. Pull the floss out at the level of the serving plate and repeat with a second cut, perpendicular to the first. Continue to cut each of these wedges into 3 parts. Serves 12.