Fill a large saucepan with cold water; season with salt (1-2 teaspoons). Add potatoes to the water and bring to a boil. Let potatoes cook until soft about 20 minutes.
Drain the potatoes and place them back into the saucepan for mashing. Add butter and cream and begin to mash potatoes into a semi smooth consistency. Once at desired texture, add cheese and mix well. Season with salt and pepper.
(Begin preparing while potatoes are boiling).
Preheat oven at 400 degrees F.
Add butter and oil to a large skillet on medium heat. Saute onions, carrots, celery and garlic until tender for about 7 to 10 minutes. Season with salt and pepper.
Once the vegetables have softened and start to brown a little add the tomato paste and mix evenly.
Add the ground beef and cook until beef is no longer pink about 10 minutes.
Add the Worcestershire sauce and beef stock. Season with salt and pepper, to taste. Cook and simmer for another 10 minutes. Mix in peas.
Transfer mixture to an oven-proof baking dish and spread evenly. Place cheesy mashed potatoes on top of ground beef mixture and spread out evenly, once the top surface has been covered, rake through with a fork so that there are peaks that will brown nicely. Place the dish into the preheated oven and cook until browned about 20 minutes.