Dissolve the yeast in warm water and let it sit for about 5 minutes.
In a separate bowl, mix together the milk, beaten egg, melted butter, and vanilla instant pudding.
In a large mixing bowl, combine the flour and salt. Add in the yeast mixture and the milk mixture, and mix until a soft dough forms.
Knead the dough on a lightly floured surface for about 5 minutes, until it becomes smooth and elastic.
Place the dough in a greased bowl, cover with a damp towel, and let it rise in a warm place for about 1 hour, or until it doubles in size.
Once the dough has risen, punch it down and roll it out into a large rectangle, about 1/4 inch thick.
Spread the softened butter on top of the dough, and sprinkle the sugar, cinnamon, raisins, and/or nuts on top.
Place the rolls in a greased baking dish, cover with a damp towel, and let them rise for another 24 minutes.
Preheat the oven to 350°F (175°C). Bake the rolls for about 20-25 minutes, or until they are golden brown.
While the rolls are baking, mix together the powdered sugar, softened butter, and milk to make the frosting.
Once the rolls are done baking, let them cool for a few minutes, then spread the frosting on top.
Serve warm and enjoy.