Heat the 1 cup milk and butter (cut into chunks) in a pan until very warm (120 to 130 on a candy thermometer), butter need not melt completely. In large bowl of electric mixer, combine yeast, salt, sugar and 2 cups flour. Pour in milk mixture and beat on medium speed for 2 minutes. Blend in eggs and 1 cup flour, beat on high speed for 2 minutes. Gradually beat in enough flour (about 1 1/2 cups) to form a stiff dough, using a spoon or heavy-duty mixer on low to medium speed. If using Kitchen aid, put on dough hook and mix 7 - 10 minutes at Speed 2.
Turn dough out on floured board and knead until smooth and elastic (about 5 min). Turn dough over in a greased bowl, cover, and let rise in a warm place until doubled (about 1 1/2 hours).
Prepare both plain and chocolate egg streusel.
Plain streusel: In a bowl, mix 1/2 cup sugar with 2/3 cup all-purpose flour, unsifted. Cut in 3 1/2 T. butter or marg. with a pastry blender, fork or fingers mixing until fine, even crumbs form. With a fork stir in 2 egg yolks until blended.
Chocolate streusel: Prepare same as plain streusel, except add 2 T. ground chocolate to sugar and flour.
Punch down dough and turn onto a floured board. Divide into 14 pieces.
Make 7 horn shapes by rolling each ball into a 4 x 8 inch oval. Top with 3 T. streusel. Roll from one end; stop halfway and fold in sides, then finish rolling and curl ends.
To make corn ear shapes, roll dough to a 4 x 8 oval. Top with 3 T. streusel, then roll up from one end to the other, pulling ends out as you go. Cut slashes on top.
To make shell shapes. Pat dough into 3 inch round. Top with 1/4 cup streusel rolled to a smooth layer, slashed, or piled in lumps.
Place buns 2" apart on baking sheet. Place buns in a warm place and let rise to almost double (about 45 minutes). Brush plain-topped buns with egg-milk mixture.
Bake buns in a 375 oven until tops are lightly browned (about 17 to 20 minutes).