Preheat oven to 375 degrees.
Cook and crumble pork in a skillet until cooked through and no longer pink. Season with salt, pepper, and garlic powder. Drain and set aside.
Add a swirl of olive oil to a skillet and add chopped onions and mushrooms. Cook until softened. Season with salt, pepper, and garlic powder.
Cook frozen veggies in a small saucepan with some water according to package. Drain and set aside.
Meanwhile, add potatoes to a medium pot of water and bring to a boil. Boil until fork tender (about 15-20 min.)
Drain and then add to a mixing bowl. Mix in milk and 2 tbsp butter. Using a mixer (or large spoon) mix until smooth. Season with salt and pepper.
To make gravy: Melt remaining butter in a saucepan then whisk in flour to make a roux.
Next, add Worcestershire and beef broth. Season with pepper to taste. Simmer and stir until thickened.
To assemble: using a 9X13 baking dish add mixed vegetables to the bottom. Spread to cover (for the Halloween version reserve 16 peas for mashed potato ghosts).
Next add pork, then onion/mushroom mix, then pour gravy on top.
Scoop mashed potatoes into a large freezer bag and cut off the corner top to use as a piping bag.
Pipe 8 mashed potato ghosts on top of the filling mixture and add two green peas as eyes for each ghost.
If not doing the Halloween version, simply spread the potatoes on, covering the filling completely.
Top with shredded cheese.
Bake for 20-25 minutes at 375 degrees.