Soak the beans and lentils overnight (the buckwheat too, if used) and drain just before cooking. Rinse and drain again.
Thinly slice the garlic and onion/leek and gently sauté them in a large saucepan, using a small amount of oil.
Add the tomato purée, spices and chipotle paste, then stir for a minute. Add the pulses and your chosen grains. Pour in most of the stock, add the carrots (cut into large chunks) and bring to the boil.
Put a lid on, and gently simmer for about 30-40 minutes, until the veggies are tender. You might need to add more stock - you want a thick, but not too stodgy, stew.
Serve with chopped chopped coriander leaves and some lime juice.