1. Place potatoes, garlic, and enough cold water to cover in a large pot over medium heat. Bring to a boil; cook until potatoes are tender, about 15 to 20 minutes. Drain, reserving 1/2 cup of the cooking water. Set aside.
2. Meanwhile, position oven rack about 8 inches from broiler. Heat broiler. Rinse and dry eggplant slices. Brush both sides with 2 tablespoons oil. Place them in a single layer on a large cooking sheet (you may have to overlap them). Broil 3 minutes; flip slices and broil 3 minutes more. Remove from oven. Reduce oven temperature to 400 degree F.
3. In a small bowl combine 1/4 teaspoon of the salt, cinnamon, cumin, and coriander. Sprinkle over both sides of eggplant slices. Set aside.
4. Heat remaining oil over medium heat in a large skillet. Cook onion and celery, stirring occasionally until onion is translucent, about 8 to 10 minutes. Add beef, 1/2 teaspoon salt, 1/4 teaspoon pepper, thyme, and bay leaf. Cook until meat is browned, stirring occasionally, and breaking up any lumps with the back of the spoon, 6 to 10 minutes. Tilt the pan and spoon off any fat. Discard bay leaf. Stir in flour and cook 1 minute. Add broth and bring to a simmer. Transfer mixture to 2-1/2-to-3 quart glass baking dish. Layer eggplant slices over beef.
5. In a large bowl mash potatoes and garlic with a potato masher. Stir in reserved cooking liquid, 1 tablespoon of the butter, and remaining salt and pepper. (The potatoes should be soft enough to spread easily. Mash in a little milk, if necessary.) Spread potatoes over eggplant. Dot with remaining butter. Bake until potatoes are golden brown and meat is heated through, 30 to 35 minutes. Let cool 5 minutes before serving. Makes 8 servings.