Prepare the eggplant. Wash the eggplants and trim off stems. Peel part of the eggplant only leaving several strips of skin on each eggplant. Cut the eggplant lengthwise into 1/2-inch slices. Put the slices in a large bowl, sprinkle liberally with salt and let them sit for 30 minutes. Rinse well, drain, and pat dry. Brush slices lightly on both sides with olive oil and run them under the broiler on an ungreased cooking sheet until lightly browned and soft. Remove and set aside to cool.
Prepare the meat sauce. Preheat the frying pan or skillet over low heat. When the pan is hot, add 2 tablespoons of oil and increase the heat to medium low. Sauté the onions with a wooden spoon until they are translucent, add the meat and continue to sauté until lightly browned. Add tomatoes, 1/2 the breadcrumbs, salt, pepper, garlic, cinnamon, bay leaves, allspice, wine, and tomato sauce and mix well. Reduce heat, cover, and simmer until all the liquid has been absorbed, about 45 minutes to an hour.
To prepare the bechamel sauce: Melt margarine in heavy medium saucepan over medium heat. Whisk in flour. Stir 2 minutes until golden-brown. Gradually add milk while stirring constantly until sauce thickens, 5 minutes. Season with salt and pepper. Remove from heat and stir in one beaten egg, whisk constantly.
To build the moussaka: Lightly oil the baking pan and sprinkle the bottom with the remaining breadcrumbs. Place a layer of eggplant slices on the breadcrumbs and spread the meat mixture evenly on top. Cover with the remaining eggplant slices, and carefully pour the bechamel evenly over the top. Bake at 350°F (180°C) for 30 minutes, then sprinkle the parmesan cheese over the top, and continue to cook for another 15 until golden.
Remove the moussaka from the oven and allow to cool for 20-30 minutes before serving.