In a separate saucepan, cover the lentils in plenty of cold water, bring to the boil and simmer for 15 minutes, until they are beginning to soften.
Meanwhile, heat the ghee in a large saucepan over a moderate heat and add the onions, ginger and garlic; cook for approximately 5 minutes, allowing them to “sweat” until they are soft, stirring to ensure it doesn’t stick or brown.
Add the spices including the cayenne (if using) and toss continuously for a further 2 minutes. Season well with salt.
Add the tinned tomatoes, combine well; bring to the boil, reduce heat and allow to gently simmer for approximately 10 mins until cooked through.
Drain the lentils and return to the hot saucepan. Add the onion and tomato mixture to the lentils, then the butternut squash. combine well and cook for 20mins until the butternut squash is cooked and the sauce has thickened. If the sauce is too dry, add more water, a little at a time.
Once the butternut squash is cooked, add the spinach leaves and allow them to wilt into the sauce.
Cover and allow to rest.
Meanwhile, sauté the red onions in some ghee until they are slightly coloured at the edges. Add in the cumin seeds towards the end and continue to sauté until the aroma is pungent.