Heat oil in a heavy bottom pot over high heat. When oil is hot, add meat and sprinkle with flour. Meat must be in a single layer and not crowded in order to properly brown, so you may have to work in batches. Cook, stirring only once to turn, until outside starts to brown. Once brown, remove from heat and set aside.
Add mushrooms and onions to pot and allow to cook, stirring infrequently, 3-4 minutes. Add garlic and balsamic vinegar, stir, and cook for another 1-2 minutes.
Add beef broth and wine and scrape bottom of pan with flat edge wooden spoon to deglaze. Once everything has released from bottom of pan, add browned meat along with any juices, rosemary, thyme, bay leaves, salt and pepper. Stir well.
Reduce heat to a simmer, cover, and cook for at least 1 1/2 hours until meat is tender.
Mix corn starch with small amount of cooking liquid in small dish to dissolve. Add slurry back to pot and mix to thicken.
Serve hot over mashed potatoes.