Heat the coconut oil in a large pan over medium-high heat. Add the chopped shallots, crushed garlic, grated ginger, and cumin seeds and toast for a couple of minutes until brown. Then add the garam masala, curry powder, turmeric and stir well for a minute or so.
Reduce the heat to medium-low. Add the chopped carrots, crushed tomatoes, and coconut milk.
Let everything simmer for a couple of minutes, then add the rinsed lentils, some chili flakes, chopped coriander, and some salt, and season to taste.
In the meantime, wash and chop your greens (if using fresh). Add your greens, bring to a boil and let the curry cook gently for 10-15 minutes until your greens are nice and tender. Stir a few times, and if the curry looks dry, add the extra cups of water a bit at a time.
Garnish with chopped fresh cilantro and serve hot over basmati rice, brown rice, or cauliflower rice. Or with naan bread.