Heat 2 tablespoons of oil in a Dutch oven or large, deep skillet or over medium high heat. Dry the chicken pieces and season them with salt and pepper. Place them in the skillet in batches and brown on all sides. Remove the chicken and place on a plate.
Add the onion to the skillet and cook until slightly softened. Add the ginger, garlic, coriander, cumin, paprika, turmeric and cayenne pepper and stir together. Add the chicken pieces and stir to coat with the spice mixture. Pour the chicken stock into the skillet so that 2/3 of the chicken is submerged. Add the saffron and stir to combine. Bring liquid to a simmer, cover the skillet and simmer on medium low heat 20-25 minutes. Add the olives and preserved lemons. Cover and cook another 10 minutes or until chicken is cooked through. Remove the chicken and turn the heat to high. Cook for another 6-8 minutes until sauce reduces slightly. Stir in the cilantro. Adjust seasoning to taste.
Serve chicken on a bed of couscous. Spoon sauce over the top. Garnish with cilantro.