Proof Yeast: In a mixer add yeast, warm milk, and ½ teaspoon sugar and gently stir. Allow to rest for 5-10 minutes for the yeast to "proof" and the mixture to get foamy on the top
Make Dough: Add salt, sugar, egg, butter, and 2 cups of flour to the mixing bowl. Mix on medium speed until combined. Add another cup of flour and continue mixing. Add more flour as needed until dough pulls away from the bottom and sides of bowl. Mix for 5 minutes. Dough should be smooth and elastic but slightly sticky.
First Rise: Remove dough to a large greased bowl, cover, and allow it to rise for 1 ½ hours or until doubled in volume.
Roll and shape: Punch dough down and turn out onto a lightly floured or greased work surface. Roll dough into a 20''x18'' rectangle.
Fill and cut: Smooth butter over the top of the dough, Mix cinnamon and brown sugar together and sprinkle evenly over the top, leaving about 1/2inch border. Roll the dough into a tight "log" and use a sharp serrated knife or some tooth floss to cut the dough into slices about 1.5 inches thick.
Refrigerate overnight: Place rolls onto a buttered 9×13'' or rimmed bakers half sheet (18×13''). Cover pan with a lid or tightly with plastic wrap and tinfoil and refrigerate overnight, 8-12 hours.
Second rise: Remove rolls from the refrigerator and allow to rise until doubled in volume, about 1 ½ – 2 hours.
Bake: Bake at 375 degrees F for 18-25 minutes, until golden and cooked through in the center. Spread frosting over warm from the oven rolls.
Cream Cheese Frosting: Add cream cheese to a mixing bowl and beat with electric mixers until smooth. Add remaining ingredients and beat well until smooth. Add additional milk or powdered sugar to make the frosting thicker, or thinner, as desired. Smooth frosting over cinnamon rolls.