Prepare the soup: In a large saucepan, heat the olive oil. Add the onion, carrot, garlic, turmeric, and cumin. Saute over high heat until the onions are glassy, about 5 minutes. Meanwhile, make a bouquet garni by tying together the celery, parsley, and thyme, and add to pan. Stir in the lentils and the chicken stock, season lightly with salt, pepper, and chili flakes, and bring to a boil. Reduce the heat and simmer for 25 to 30 minutes, or until the lentils are tender. Skim as necessary.
Meanwhile, prepare the meatballs: Preheat the oven to 350 degrees F.
In a small bowl, soak bread crumbs in milk. In a mixing bowl, combine the lamb, almonds, soaked bread crumbs, onion, raisins, egg, garlic, parsley, cilantro, and chili pepper flakes. Season lightly with salt and pepper. Drizzle olive oil on the platter you will place the meatballs on and rub oil into the palm of both hands. Form meat mixture into 40 golf ball-size meatballs, each approximately 1-inch in diameter.
Heat 2 tablespoons olive oil in a large ovenproof skillet or saute pan. Arrange the meatballs in 1 layer in the pan, quickly sear meatballs over high heat, and then place in the oven. Cook until the meatballs are well browned and firm to the touch, turning to brown all sides, 8 to 10 minutes.
Prepare the garnish: In a small bowl, combine all ingredients. Refrigerate until serving time.
Return to the soup: Remove the celery bouquet. With an immersion blender, lightly blend soup (you want it to still be a little chunky). Correct seasoning, to taste. Alternatively, transfer 2/3 of the soup to a blender*. Blend until smooth and return to the saucepan.
Ladle soup into 8 or 10 soup bowls. Divide the meatballs evenly among the soup bowls and drizzle the yogurt mixture over. Serve immediately.
*When blending hot liquids: Remove liquid from the heat and allow to cool for at least 5 minutes. Transfer liquid to a blender or food processor and fill it no more than halfway. If using a blender, release one corner of the lid. This prevents the vacuum effect that creates heat explosions. Place a towel over the top of the machine, pulse a few times then process on high speed until smooth.
Place the chicken bones in a 6-quart pot, pour water over to cover, and bring to a rolling boil. Skim off the scum that collects on the top. Add the remaining ingredients, lower the flame, and simmer about 2 hours, skimming as necessary. Strain into a clean bowl and cool. Refrigerate in a covered container for up to 3 days, discarding hardened layer of fat before using or freezing.
Yield: about 2 quarts
When blending hot liquid, first let it cool for five minutes or so, then transfer it to a blender, filling only halfway. Put the lid on, leaving one corner open. Cover the lid with a kitchen towel to catch splatters, and pulse until smooth.
Recipe adapted from Wolfgang Puck, "Adventures in the Kitchen", (c) 1991