Heat the oil in a large pan and cook the onion, garlic, celery and mushrooms for 10 minutes, with the lid on, stirring occasionally until softened but not browned.
Stir in the tomato purée, tomatoes, lentils and stock. Bring to the boil and simmer with the lid half on for 20 minutes. Season, stir in the Worcestershire sauce and keep warm.
Meanwhile, boil the swede for 20-25 minutes. Drain and mash with the milk. Season.
Preheat the grill to high. Put the mixture in an ovenproof dish, top with the mash and grill to crisp up.