Dissolve yeast in warm water and set aside for 5-10 minutes until frothy.
In a medium bowl, combine milk, butter, sugar, and salt and microwave on high for 45 seconds. Whisk until butter is melted. Set aside until it is lukewarm in temperature.
In the bowl of a stand mixer (or you can mix and knead by hand), combine milk mixture and yeast mixture. Stir in egg (be sure it is not cold!).
With the mixer on low speed and the dough hook on, gradually add in just enough flour so that a soft dough ball forms. It should be soft and slightly tacky, but not sticky.
Drizzle some oil over a large glass bowl. Place dough ball in bowl, and turn so that the dough is lightly coated in oil. Cover with plastic wrap and a towel if desired. Let sit in a warm, draft-free place for 1.5 hours or until doubled in size (the inside of the microwave or the oven with the light on are great options!)
Cinnamon Bun Sauce
Just before your dough is ready to roll, make the sauce.
In a medium saucepan, combine cream, corn syrup, sugar and butter. Heat over medium-high heat until it comes to a boil. Reduce heat slightly and simmer for 2-3 minutes.
Lightly grease a 9x13" pan and pour prepared sauce into the bottom. Set aside.
Cinnamon Bun Filling
Preheat oven to 350 degrees F.
Once the dough has risen, remove from the bowl onto a lightly floured surface and roll into a roughly 12" by 18" rectangle (you can really make them as large or small as you want -- a wider rectangle or square will give fewer, larger rolls. A long skinny rectangle will give more, smaller cinnamon buns).
Spread butter over the dough and sprinkle evenly with brown sugar and cinnamon
Roll the rectangle up tightly, starting at the long end. Pinch the dough together to form a seam at the end.
Trim the ends and slice log in half. Slice each half in half, so you have 4 equal pieces. Cut each piece into 3 equal sections so you have 12 buns. Place in prepared pan on top of sauce.
Cover the pan with a clean kitchen towel or piece of plastic wrap, and allow to rise in a warm, draft-free place until doubled in size, about 1 hour.
Bake at 350 degrees F for 23-27 minutes, until light golden brown on top and bubbling at the edges.
If desired, turn out onto a baking sheet lined with parchment paper and let the caramel sauce run down into the buns. (If you are frosting them, I recommend leaving the gooey sauce at the bottom).
Cream Cheese Frosting
In a medium bowl, beat the cream cheese and butter with an electric mixer until smooth.
Add the vanilla and sugar and beat until combined and fluffy. If desired, add a touch more sugar for a thicker frosting.