Heat oil in a large cast iron / heavy-bottomed pot over medium heat. Rinse and dab dry the beef with kitchen towels. Season with salt and freshly ground black pepper. Once the oil is hot, brown the beef (in batches and adding more oil if necessary) until all sides are browned. Remove with a slotted spoon and set aside.
(After browning the beef, I found the beef bits were way too charred because I didn't use a good-quality pot. Worried that the stew might have a burnt taste, I reserved the oil, washed and dry the pot, then add the reserved oil - very flavourful now - back in.)
Without washing the pot, add in the onion, carrots and bay leaves. Cook for 5 to 10 minutes over medium to medium-low heat, stirring frequently, until the onions are translucent. Add in the beef, tomatoes, Guinness, scant teaspoon of salt, a few grinds of black pepper and 1 tablespoon sugar. Bring to a boil and cover the top with a parchment paper lid and the pot lid.
Roux: Combine flour and unsalted butter in a small frying pan over medium-low heat. Stir constantly until a paste forms. Set aside to cool.
Oven: Preheat your oven to 180 degrees Celsius. Place the pot of stew in the oven and cook away for 2.5 hours. Stir in the mushrooms and the roux (use enough to thicken the stew, don't have to use all) and cook for another 30 minutes. Taste the stew and add more sugar, salt and pepper if necessary.
Stove: Simmer the stew for 1.5 hours over low heat, stirring occasionally. Add in the mushrooms and roux (use enough to thicken the stew, don't have to use all) and cook for another 15 minutes. Taste the stew and add more sugar, salt and pepper if necessary.