In a large skillet (preferably nonstick), heat the butter over medium-high heat until bubbly. Add the onions, carrots and garlic. Cook, stirring occasionally, until the vegetables are soft, about 8-10 minutes. If you aren't using a nonstick pan, you can optionally allow the ingredients to brown on the bottom of the pan, deglazing periodically with a splash of water and scraping the brown bits up with a spatula. This will enhance the flavors.
Add the meat, 1 teaspoon salt and 1/2 teaspoon pepper. Cook, using a spatula or wooden spoon to break up meat, until browned, about 12 minutes. You can optionally continue deglazing with water during this time.
Stir in the flour and tomato paste and cook for an additional 2-3 minutes, stirring frequently. Add the cream and cook for about 1 minute. Add the stock, Worcestershire sauce, and thyme. Simmer over medium heat, stirring frequently, until the gravy is thick, 15 to 20 minutes. Remove from the heat, stir in peas, and taste the gravy to see if it needs more salt and pepper. Transfer the filling to a 3-quart casserole dish. (2 1/2 quarts will be fine as well).
Prepare the Topping:
Adjust an oven rack to the upper-middle position, then preheat the oven to 375 degrees F.
In a large saucepan, cover the potatoes with cold water and 1 teaspoon salt. Bring to a boil over high heat, then cook until the potatoes are tender, about 15 minutes. Drain and return the potatoes to the saucepan, then mash with the cream, butter and yolk until smooth. Season with salt and pepper to taste.
Spoon dollops of mashed potatoes over the filling, then use a spatula to create a smooth, even layer. Drag a fork across top to add texture.
Bake until filling is bubbling around the sides, about 15 minutes. Turn on the broiler and let the top develop a brown crust (this can take anywhere from 1 to 5 minutes, depending on your oven. Watch closely to prevent burning).
Remove from oven and cool for at least 10 minutes before serving. For best results, cover and refrigerate for a couple hours or prepare the night beforehand, so the flavors have a chance to mingle. Reheat in a 350 degree F oven for about 25-35 minutes, or until warmed through (cover the top of the casserole dish with foil to prevent drying out). You can also reheat individual servings in the microwave. Enjoy leftovers within 1 week.
Notes
Potatoes will start to oxidize and change color after being peeled. Either wait to peel them until right before boiling, or place the peeled potatoes in a bowl of cold water.I recommend making this recipe a day in advance or at least several hours before serving. The finished dish tastes better once the flavors have a chance to really blend (similar to gazpacho).Read more about glazing and deglazing in my culinary glossary.