In a small pot combine milk and sugar and bring to a boil on high. Lower the temperature and stir frequently until sugar dissolves in milk.
Melt chocolate with 2-3 tablespoons of milk on low at the same time. Stir frequently to prevent burning.
In a large mixing bowl cover walnuts evenly with sugar and milk. After walnuts absorb the liquid completely add melted chocolate, orange juice and zest. (If using, add rum or Grand marnier now also.) Mix well until integrated. Let cool.
Meanwhile make a bain marie (heated bath) by placing a pot filled with water one third of the way on the stove. Bring water to a boil, then lower temperature just enough to keep it at a slow boil.
(Parallel to water warming up) In a large metal mixing bowl (that can partially fit into the pot from the step above) start mixing yolks with a hand mixer while adding the sugar to the bowl one tablespoon at a time. Mix 3-4 minutes on high, then transfer the bowl into the pot. (There should be a little bit of space between the water and the bottom of the bowl, but the bowl should prohibit the steam from leaving the pot.) Keep stirring egg yolks quickly and continuously with a plastic spatula around 5 minutes. Remove egg yolks from steam heat and let cool.
In a large mixing bowl mix butter until soft with a hand mixer. Add egg yolks and continue mixing. Finally add the remaining mixture (walnuts, etc.) and mix a few more minutes until the layer is well integrated and airy (light) at the same time. Transfer to fridge for 45 minutes to 1 hour.
Combining layers 1 and 2: Place a (clean) cake ring (just the side portion) about half way up the cake crust and close it. Evenly distribute layer 2 on top of the cake crust. Use a knife if necessary. Transfer back to fridge leaving the cake ring on.