Heat the oil in a large frying pan. Add the onion and cook until soft. Remove from the pan and keep warm. Heat a little more oil the pan and brown the meat. Stir in the flour and cook for a few minutes. Add in the onions, carrots, tomatoes, purée, water, salt and pepper. Bring to the boil, then reduce the heat and simmer gently for 15-20 minutes.
Preheat the oven to Gas Mark 4, 180°C (350°F). Pour the mince mixture into a baking dish. Mash the potatoes with the egg yolk, butter, milk or cream and salt and pepper. Pile the potatoes on top of the mince and score with a fork. Bake in the preheated oven for 20-25 minutes until the potato is nicely browned.