Cook beef on medium-high heat until almost fully browned then drain most of the excess fat.
Add chopped onion and celery and cook for 5 minutes.
Cook tomato paste for 2 minutes, then pour in beef stock, along with Worcestershire sauce, salt, thyme and black pepper.
Bring to a boil then reduce the heat and cover for 20 minutes.
While beef cooks, add potatoes to a large pot and bring to a cook for about 15-20 minutes, until potatoes are fork tender.
Drain potatoes, then melt butter before adding the potatoes back to the pot with cheese, milk and salt. Mash to your desired consistency (taste and season to your preference).
Preheat oven to 350F.
When the beef is completed, simmer covered, mix and add in the cornstarch slurry. Cook uncovered for an additional 10-20 minutes or until it has thickened (you do not want to remove all liquid but most).
Mix in frozen peas and carrots, then transfer to a 9x13 baking. Carefully place mashed potato on top and lightly scrape with a fork to leave lines, if desired (I tend to place cobble stones of potatoes on top to make it even, since it cannot be spread on top).
Bake for 25 minutes, uncovered. If desired, broil until golden.