In a large bowl or mixer, combine 4 cups of flour and yeast.
Heat milk with sugar, salt, and butter or shortening to warm and mostly melted and add to flour.
Add beaten eggs and beat for 30 seconds.
Let the mixture proof for 5-10 minutes to activate yeast if using traditional yeast.
Add remaining flour one cup at a time until it forms a soft ball and begins to pull away from the side of your bowl.
If kneading by hand, knead for 8-10 minutes until a smooth elastic dough forms.
If using a stand mixer, knead for 5-6 minutes.
Cover and let rise for 1 hour or until doubled in size.
Roll out into a rectangle, 12 inches wide and 1 inch thick, and spread with butter, brown sugar, salt, and cinnamon – add nuts and raisins if desired.
Place in a greased 9x12 baking dish, cut side down, and allow to rise again for 45-60 minutes until doubled.
If you desire a glossy, golden finish, add an egg wash of beaten egg with a little water.
Bake at 375 for 15-20 minutes or until golden brown.
Allow to cool and ice with cream cheese frosting if desired.