1. Preheat the oven to 160°C, gas mark 3. Remove the haggis from its outer packaging and wrap tightly in foil. Place in an ovenproof dish and add water to come 2cm up the sides of the dish. Cook for 1 hour 45 minutes.
2. Meanwhile, make the gravy. Heat the oil in a large pan and fry the vegetables for 5 minutes until just brown. Add the flour and tomato purée and cook for 2-3 minutes. Slowly add the stock, stirring until smooth. Bring to the boil and simmer gently for 30 minutes, then pass through a sieve. Return the gravy to a clean pan and add the redcurrant jelly, worcestershire and Tabasco sauces. Simmer for 5 minutes, then remove from the hob and reheat before serving, if necessary.
3. For the tatties, place the potatoes in a pan and cover with cold water. Bring to the boil and simmer for 12-15 minutes until tender. Drain, return to the pan and allow to dry for 2-3 minutes, then mash. Warm the milk and half the butter in a small pan until the butter has melted. Stir into the mashed potato and season.
4. For the neeps, place the swede in a pan and cover with cold water. Bring to the boil and simmer for 15 minutes until tender. Drain and return to the pan to dry out for 2-3 minutes. Mash, stir in the remaining butter and season.
5. Reheat the gravy, neeps and tatties if necessary. Remove the haggis from the oven and unwrap from the foil. Make a slit through the casing and pour in the whisky. Serve spoonfuls of haggis with the tatties, neeps and gravy.