Place tagine base on a heat diffuser set over a stove. Heat olive oil in the base of a tagine over low-medium heat. Add onion, garlic, ginger, 2 tablespoons water and cook for 10-15 minutes. Then add lamb and brown it over medium heat. Add spices, tomatoes, tomato paste, salt, potatoes and water. Cover and simmer for 2 hours, until meat is well done and potatoes are cooked, adding hot water if needed. Roast mushrooms and add to the tagine along with olives, preserved lemon, and lemon juice. Simmer for 10 more minutes and adjust seasoning. Garnish with cilantro and turn off heat before the sauce reaches desired thickness as the tagine will continue to evaporate the sauce.