Preheat oven to 205°C/400°F.
Boil cauliflower boil 10-15 minutes until very tender. Drain well and set aside.
Heat 1 tablespoon of oil in a large pan, over medium-high heat, until hot but not smoking. Add mushrooms and cook, stirring occasionally, until water from mushrooms has evaporated (approximately 3 minutes).
Add Garlic and Parsley Base
and cook another 2 minutes, stirring. Add salt and pepper to taste and remove from fire. Set aside (but keep it warm).
Heat remaining oil in another pan, over medium-high heat. Add onion and cook until transparent (approximately 3 minutes). Add tofu and cook another 2-3 minutes, stirring, until cubes are beginning to colour.
Add tomatoes, tomato paste, Worcestershire sauce and broth. Add frozen peas and mushrooms. Pursue cooking another 4-5 minutes. Add salt and pepper to taste.
Remover from fire and pour in a large baking dish.
Heat butter and part of the milk in the microwave until very hot. Add to cauliflower and mash, until consistence is creamy. Add more milk if necessary. Add salt and pepper to taste.
Cover tofu mixture with cauliflower puree, spreading evenly over top.
Bake in the centre of the oven 25-30 minutes until top starts to brown.
Remove from oven. Switch oven temperature to "broil" and add cheese over top of casserole. Return to oven. Watching carefully (this can go quickly), bake until cheese is bubbly and turning brown. Serve.