For the marinade: Pull out your pestle and mortar and add the caraway seeds. Grind to a powder, then pour into a large non-reactive bowl (stainless steel is best because turmeric can stain ceramics). Add the garlic and the ginger to the mortar. Sprinkle with a little kosher salt and pound away until a relatively smooth paste forms. (If you don't have a pestle and mortar then finely mince the ginger.)
Scrape the ginger-garlic paste into the large bowl with the caraway seeds. Add the yogurt, 1 teaspoon of salt, turmeric, cayenne pepper and garam masala and whisk all together. Add the lamb and toss until all the pieces are well coated. Cover the bowl with plastic wrap, place it in the refrigerator and let it marinate up to overnight.
When you're ready to cook, preheat the oven to 400 degrees F.
Pull out the lamb and let it come to room temperature. Meanwhile, get going on the onions. Warm the oil in a large skillet over high heat. Add the onions and stir so they're thoroughly coated with oil. Let them sit about 5 minutes or so, until the onions around the perimeter begin to brown. Stir, redistribute, and allow to sit another 5 minutes or so. Repeat this process until the onions are evenly browned, about 20 minutes in total.
Reduce the heat to low and cook another 20 minutes, stirring occasionally, until the onions are a deep chestnut brown (not burnt!) and slightly crispy. Using a slotted spoon, remove the onions to a paper towel-lined plate and drain. (You can strain the oil and use it to cook your next batch of vegetables!).
Add the onions to the lamb along with the milk and the dried apricot halves. Stir to combine evenly, then pour into a medium baking dish that holds the lamb in a single, even layer (an 8-inch square or an 8-inch by 10 1/2-inch dish works well as does an oval dish). Cover firmly with foil, and pop into the oven for 1 1/2 hours, rotating the dish halfway through the cooking time, uncover for another 30 minutes of cook time.
Sprinkle with almonds and serve with crusty bread or naan.
Combine the cinnamon sticks, cloves, green cardamom seeds, black cardamom seeds, if using, in a spice grinder or coffee grinder and grind until fine. Store the spice mix in an airtight container away from direct sunlight.
In a large glass, dissolve the dry yeast and 1 teaspoon sugar with 3/4 cup warm water (about 100 degrees F). Let it sit on your counter until it's frothy, about 10 minutes.
Meanwhile, sift the flour, salt, remaining 1 teaspoon of sugar and baking powder into a large, deep bowl.
Once the yeast is frothy, add the yogurt and the olive oil into the glass, and stir to combine. Pour the yogurt mixture into the dry ingredients and add the kalonji and fennel seeds, if using, and gently mix the ingredients together with a fork. When the dough is about to come together, use your hands to mix. It will feel like there isn't enough flour at first, but keep going until it transforms into a soft, slightly sticky and pliable dough. As soon as it comes together, stop kneading. Cover the dough with plastic wrap or a damp tea towel and let it sit in a warm, draft-free place for 2 to 4 hours.
When you're ready to roll, make sure you have two bowls on your counter: one with extra flour in it, and one with water. The dough will be extremely soft and sticky-this is good! Separate the dough into 6 equal portions and lightly roll each one in the bowl of extra flour to keep them from sticking to each other.
Shape the naan. Using a rolling pin, roll each piece of dough into a teardrop shape, narrower at the top than at the bottom. It should be 8 to 9-inches long, 4-inches wide at its widest point and about 1/4-inch thick. Once you've formed the general shape, you can also pick it up by one end and wiggle it; the dough's own weight will stretch it out a little. Repeat this method with the rest of the dough. (If you're making the gluten-free version, you'll have better luck pressing the dough out with your fingertips, than rolling.)
Warm a large cast-iron skillet over high heat until it's nearly smoking. Make sure you have a lid large enough to fit the skillet and have a bowl of melted butter at the ready.
Dampen your hands in the bowl of water and pick up one of your naans, flip-flopping it from one hand to the other to lightly dampen it. Gently lay it in the skillet, and set your timer for 1 minute. The dough should start to bubble.
After about 1 minute, flip the naan. It should be blistered and somewhat blackened, don't worry - that's typical of traditional naan! Cover the skillet with the lid and cook 30 seconds to 1 minute more.
Remove the naan from the skillet, brush with a bit of butter and sprinkle with a little coarse sea salt. Place the naan in a tea towel-lined dish. Repeat with the rest of the naans and serve.
* If you would like to make this gluten-free, you can substitute in 2 1/4 cups of a gluten-free all-purpose flour mix for the regular flour, plus 1 1/4 teaspoons of xanthum gum. **The kalonji and fennel seeds are not traditional, but I love the burst of onion and mild licorice flavor they add. You can find them pretty cheaply at your local Indian market. Yield: 6 loaves.