1. Prepare a grill or broiler to high. Lightly oil a grill rack or broiler pan. Grill or broil the eggplant, turning once, until the eggplant is tender and browned (5 minutes per side). Set aside and keep warm.
2. In a small bowl, combine the first seven spices. In a large frying pan, heat the olive oil over medium heat until hot but not smoking. Add the spice mixture and cook, stirring constantly, until fragrant (30 seconds).
3. Add the onion and saute until soft and translucent (4-5 minutes).
4. Add the tomatoes, molasses, garlic and vinegar. Cook, stirring occasionally, until thickened (4-5 minutes). Season with salt and pepper.
5. Top the eggplant with the sauce and garnish with cilantro to serve.