Cover the split lentils with 2 cups boiling water, set aside.
In an extra-large saute pan or Dutch oven, heat the ghee over medium heat, add the crushed coriander seeds, mustard seeds, cumin seeds, fennel seeds and stir for one minute.
Add the shallots, garlic and ginger and optional chilies, and saute until fragrant and golden, lowering the heat to med-low, if need be, about 5 minutes. Add the curry powder and turmeric. Stir in the lentils along with the 2 cups of hot water. Add the salt and fenugreek. Give a good stir.
Add the coconut milk and stir to incorporate, then add the cauliflower florets, coating them well. Give the pan a shake to allow any lentils to slip back into the liquid. Increase heat, bring to a simmer, cover, and simmer gently over med-low heat, until lentils are softened and cauliflower is fork-tender, about 10 minutes.
Remove lid and let some of the liquid cook off, about 3-4 more minutes. Carefully stir in spinach. Taste, adjust seasonings. Add a squeeze of lemon if you like.
Garnish with cilantro or scallions and if you made the extra tempering oil ( see notes), spoon this over top before serving.
Serve with naan bread or basmati rice, or on its own in a bowl like a stew.