Place the potatoes/sweet potatoes in a medium saucepan, cover with water, salt as you would pasta water, and bring to a boil for about ten minutes, or until tender. Drain, and return to saucepan over heat for a minute or so to dry out a bit. Add the coconut milk, and the salt, and mash together. Set aside.

In a large saucepan over medium-high heat, combine the coconut oil with the onion and garlic, and a generous pinch of salt. Sauté for a few minutes, until onions are translucent, and then turn the heat up and add the carrots. Cook for a few minutes. Add the tomatoes and spices. Stir well, then add the chickpeas and peas. Add the chopped spinach. Cook for another minute or two, taste, and adjust with more garam masala or salt if needed. Make sure the spinach as decreased in size before step 4.

Transfer the mixture to a 8-inch baking dish (or equivalent), spreading it across in a somewhat even layer. Dollop the potatoes across the top, and gently push them around until they cover the entire top of the casserole, run the tines of a fork across the top if you like a bit of texture.

Bake for 25 minutes, and finish under a broiler to add a bit of extra color and texture to the top. Serve as-is, or sprinkled with any (or all) of the suggested toppings.

Notes:

You can really add and subtract whatever you want from this. I've made it different times with different fillings (mushrooms, zucchini, etc).