Make the spice mix.
Dilute the tomato paste with enough water to get to the consistency of passata.
Heat your frying pan (don't use non-stick) briefly over medium heat. Add the oil.
When the oil starts to shimmer add the garlic ginger paste and cook, stirring constantly, until it stops sputtering.
Add the cilantro and green chili and cook for 15-20 seconds, stirring constantly.
Turn down the heat and add the spice mix. This is the critical step. Stir it constantly for 30 seconds. If it starts to darken lift the pan off the heat. You want the spice mix to cook in the oil but not burn.
Turn the heat up to medium high. This is important. The heat is what caramelizes the onion in the curry base and gives the curry it's Indian restaurant flavour. As you become more comfortable with this technique try pushing it. Add the diluted tomato paste and stir until bubbles form (the oil will likely separate). This takes around 30 seconds to one minute depending on the heat.
Add 3 oz of curry base. Stir until bubbles form (little craters really), around 30 seconds. Think lively boil. Watch the edges of the pan. The curry can stick here. Sticking is OK. Just scrape it back into the base. Burning is bad.
Now add 6 oz of curry base and stir briefly. Let it cook until the bubbles form again. This takes 1-2 minutes.
Add the rest of the curry base and let cook until the bubbles form.
Mix in the malt vinegar, sugar and optional tamarind sauce.
Turn the heat down to low and add the pre-cooked lamb, beef or chicken.
Let the curry simmer for about 5 minutes. If it gets too thick add a bit more curry base. Don't add water.
Garnish with a bit of chopped fresh cilantro and serve.