1Place potatoes in a pot, cover with water and bring up to a boil. Season water with salt and boil potatoes until tender.
Heat a skillet over medium high heat. Add ground beef to the pan and caramelize the meat. Add in the mushrooms and onions and cook until tender,then season with salt and pepper.
While meat cooks heat a small sauce pot over medium heat and melt butter, whisk the flour into butter, cook 2 minutes then whisk beef stock into flour, add Worcestershire and season sauce with salt and pepper, to taste. Thicken.
Pour gravy over meat and turn on broiler.
Place drained potatoes back into the pot you cooked them in to dry them out a little. Mash potatoes with egg yolk, Parmesan cheese, milk and 2 tablespoons of butter. Season the potatoes with salt and pepper and spread across the top of the meat in an even layer. Garnish the potatoes with bacon and place under broiler to crisp and brown the potatoes, 2 to 3 minutes.