In a small bowl combine water, yeast and sugar. Stir until dissolved. Set aside.
In large bowl, make pudding mix according to package directions. Use only half of the pudding mix for this recipe. Reserve the other half in the fridge to eat later.
Add butter, eggs and salt to the pudding mixture and mix well.
Add the yeast mixture and mix together. Gradually add flour; knead until smooth. Add additional flour until dough is soft but not sticky.
Place in a greased bowl. Cover and let rise until doubled, about 1 hour.
Onto a floured surface, roll dough until it's about ¼ inch thick. Take ½ cup soft butter and spread over surface.
In bowl, mix the brown sugar and cinnamon. Sprinkle over the top. Roll up very tightly starting with the long end. Cut rolls of about 1 and ½ inches with thread or serrated knife.
Place on lightly greased cookie sheet 1 inch apart. Cover and place in the refrigerator overnight. When ready to bake remove from the fridge and allow rolls to rise.
Preheat oven to 350 degrees. Bake for 15-20 minutes. Remove when they start to turn golden brown.
Frost rolls after rolls have cooled just a couple of minutes. You still want to frost them while they're warm just not super hot.
Frosting: Mix together cream cheese, butter, vanilla extract, confectioners' sugar and milk. Add more milk as needed.