Preheat the oven to 325F.
Pat your beef dry with paper towel and sprinkle with salt and pepper. Set an oven-proof Dutch oven over medium-high heat, add a drizzle of oil or dab of bacon fat, and brown the meat in batches, transferring to a plate as you go. Add extra oil in between if the pan needs it.
Once the meat is browned, add the onions to the pan and cook for a few minutes, stirring to loosen any browned bits in the bottom of the pan. Return the beef to the pan, add the garlic and shake over the flour, stirring to coat everything well. Add enough stout and stock to just barely cover the meat. (If not, add a little more stout, stock or even water.) Add the tomato paste and Worcestershire sauce along with a couple sprigs of thyme (or pull off the leaves and add them to the pot), cover and cook in the oven for 1 1/2 hours.
Remove the pot from the oven, stir in the carrots and return to the oven for another hour, or until the meat is very tender. Remove from the oven and turn the heat up to 400F. If you like, scrape the meat mixture into another baking dish. Sprinkle with cheese. On a lightly floured surface, roll the pastry out about 1/4-inch thick, making it slightly larger than the size or diameter of your baking dish. If you’re going to drape the pastry over the edges, brush them with beaten egg. Drape the pastry overtop, sealing it around the edge of the pan. (Alternatively - if there’s too much space between the top of the meat and the top of the pan - tuck the edge of the pastry haphazardly down around the edge inside the pan.) Brush the top with beaten egg and if you like, score the top lightly with a sharp knife.
Return to the oven for 20-30 minutes, or until the pastry is deep golden. Serves 6.