Add the minced beef to a preheated saucepan and fry quickly releasing the fat (if you use lean beef you'll have to use oil) add thinly sliced onion and lower the heat allowing onions to saute - you can use more meat if you want, but I buy 450g and steal 100g of it to make my Cornish pasties ;)
When onions have become clear add the butter and melt
Sprinkle the flour over the top of the neat and onion mixture and stir in to absorb the butter. Cook for 1 minute whilst stirring.
Add the beef stock a little at a time stirring well in between to avoid any lumps.
Put the meat layer into your chosen baking dish - I use a rectangular 12x8, 2 inch deep glass dish but you could choose round, smaller, deeper
Now make the leek layer (leaving meat to cool helps keep the layers separate during cooking)
Put butter into a saute pan with a lid. Add the sliced leeks and sweat with the lid on over a low heat
When the leeks are soft, sprinkle over the flour and stir in for 1 minute
Add the milk and stir in well now add the mustard powder and grated cheese
If you don't have mustard powder you can use yellow English mustard. Add any seasoning at this point that you feel necessary - we all have different palates
When leeks cooled dollop onto the meat sauce, then carefully, a forkfull at a time, cover it in mashed potato. I start from the centre so if I don't have enough mashed potato i just leave a border around the outside - it's ok, it doesn't have to be perfect
So mashed potato - i may make fresh for this meal, but often I use leftover, so up to you but I would say that you need it to be fairly stiff.
You can keep in the fridge up to 48 hours before baking, the longer the better as it firms up the layers
Bake at 180ºC gas 4 for 35 - 40 minutes until the meat starts bubbling through and it starts to form a sticky crust