Preheat oven at 400-degree Fahrenheit and prepare an 8-inch baking dish. In a stockpot combine lentils, water and vegetable stock. Let it cook covered at high flame until the lentils are almost soft and water is almost absorbed.
Toss in mushrooms and cook covered again at medium-high flame for 3-4 minutes or until the water is absolutely absorbed.
Now, add mixed vegetable and crushed tomatoes andsauté for 1-2 minutes.
Now add garlic powder, onion powder, salt, crushed black pepper, cayenne pepper, Italian seasoning. Mix well and turn off the flame.
Now, spoon it out in the prepared baking dish and spread it out evenly with a spatula.
Now, combine cauliflower florets in a saucepan and cover it with water. Let it boil uncovered for 5-10 minutes or until its mushy. Turn it off and drain the water.
Now, add all rest of the ingredients of the toppings to the boiled cauliflower and mash it smooth with a food masher.
Add the mashed cauliflower as the top layer and evenly spread it. Then, rough the cauliflower a bit with a fork. (do not press it too much).
Now, bake it in the middle rack of the oven for 30 minutes or until the top is golden brown. Turn it off, take it out and place the baking dish on a flat surface. Spoon it out and serve immediately hot.