Soak the cashew nuts in warm water for about 10 minutes. Add the potatoes and carrots to a pot and cover with water. Boil until potatoes and carrots are tender. Be careful not to over cook the potatoes or it will turn mushy. Add the cauliflower and boil for another 5 minutes or until tender
Add the chopped onion, ginger/garlic paste, chillies and cashew nuts to a blender and blend into a smooth paste
Heat the butter ghee or oil and add the paste. Cook for at least 2 minutes on low heat. Be careful not to let it burn
Add the spices, turmeric, chilli powder, cardamom, fennel, cinnamon, garam masala. Mix well and cook for 3-4 minutes. Add a little bit of water to prevent it from burning
Add the tomato and cook for a minute
Add the steamed veggies and water and simmer for 5 minutes or until veggies are tender but not mushy. You can add more water if you prefer more sauce. Add the spinach and cook just until wilted
Mix in the cream. Serve hot with naan bread or rice