In a food processor, blend the spinach to a puree using 1 or 2 tablespoons of water to loosen the mixture, transfer the spinach to a bowl, and set aside. Clean the food processor.
Heat the vegetable oil in a pan over a medium heat. Add the cardamom pods, bay leaves, and cinnamon, and fry for 20 to 30 seconds. Add the green chiles, and onion, and continue to fry for 4 to 5 minutes, or until caramelized.
Meanwhile, blend the ginger, garlic, and tomatoes to a smooth paste in the food processor.
When the onions have caramelized, add the paste, chicken pieces, coriander, and garam masala to the pan, and stir well, to combine. Season the mixture with salt, to taste, and simmer for 12 to 15 minutes, stirring frequently.
Add the yogurt, stir well, and continue to simmer the mixture until the sauce has thickened and almost dried out.
Stir in the spinach puree and continue to simmer for 10 to 12 minutes, or until the chicken has cooked through. Season the mixture, with salt, and freshly ground black pepper, to taste, then serve with rice.
Instead of pureeing all of the spinach, you can add half the quantity of spinach whole and the rest as puree. Once the whole spinach has wilted in the pan, serve. *Can be found at specialty Asian markets.