Preheat oven on BROIL to 350 degrees F. Place foil over baking sheet and oil lightly.
Wash and cut eggplant into 1-inch thick rounds. Place flat side of each round on baking sheet. Cut onion into thin slices and peel garlic. Slice or press garlic. Cut basil into ribbons.
Sprinkle salt (just a little bit) over the eggplant rounds. This will take away some of the bitterness of the eggplant. Place baking sheet in oven. At 5 minutes check for tenderness (they may be golden). If tender/golden flip each round over, repeat salt sprinkle and place in oven for another 5 minutes.
While the eggplant cooks for the 2nd 5 minutes, cut tomato into thick slices. Check eggplant for tenderness again and place one tomato slice on top of each eggplant round. Place in oven for another 5 minutes.
Heat olive oil in pot and add garlic. Saute for about 30 seconds and add onion. Keep stirring until onion is lightly browned. Add mushroom. Once mushrooms are cooked down, add spinach. The moisture from the spinach will give you time to leave the skillet and remove the baking sheet from the oven. Tomatoes should be lightly browned.
Add sauce to pot and stir until heated all the way through. Add cayenne pepper and crushed red pepper to taste. Pour sauce and vegetables over eggplant and tomatoes - covering completely.
Add basil ribbons to the top and put back into oven for 3 minutes. Add cheese to top and cook for 2 more minutes.