1. Add half the raw cashews to a small bowl, and cover with boiling hot water. Let them soak while you get the vegetables boiling.
2. Add the potatoes to a large stock pot. Fill with water (go well over the top), then bring to a boil. Add carrots, florets, and green beans to the pot. Start checking doneness around 10 minutes, until the potatoes are almost fork tender. Drain and set aside.
3. Rinse the rice well, then add 1.5x its amount in water and a pinch of salt to a medium pot. Bring to a boil over medium-high heat, then lower the heat, cover and simmer for 18 minutes. Once it's done, fluff it with a fork and let it sit, covered, for 5 more minutes.
4. Make the puree: Add the canned tomatoes, onion, ginger and garlic to a blender. Blend until a smooth puree forms.
5. Transfer the puree to a large saucepan (big enough to hold all the vegetables when they're done cooking!) with 2-3 tablespoons of olive oil and a big pinch of salt for seasoning. Bring to a boil. Simmer over low-medium heat for 5 minutes, stirring frequently. Now add all the spices (garam masala, curry powder, coriander, turmeric and cayenne pepper) and stir, cooking for 2-3 minutes until fragrant.
6. Drain the cashews. Add the cashews and the can of coconut milk to your blender (no need to rinse it out from the tomatoes), and blend until smooth. Pour the cashew/coconut mixture into the pan with the tomato puree. Season with salt.
7. Add the frozen peas, stir and cook for a minute. Now add the cooked carrots, potatoes, cauliflower and green beans. Stir until combined and warm, about 5 minutes. Add salt to taste.
8. Serve with cooked basmati rice, chopped cilantro and remaining cashews, plus naan if you've got it. Enjoy!