Bring a large pot of water to a boil, and set up a large colander in the sink. Drop the spinach by the handful into the boiling water, stirring with each addition. Bring the water back to a boil for a few seconds, just until the spinach is bright green, then drain the spinach, and rinse with cold water. Drain the spinach and wring it out by the handful, then spread the spinach on a kitchen towel. Wrap the towel around the spinach and roll it up, and press down to press all the water out of the spinach. Chop the spinach and reserve.
In a 4-quart pot, pour the olive oil and place over medium-high heat. Add the onion, carrot and celery and stir. Cook until the vegetables sizzle, then reduce to medium-low and stir for at least 5 minutes to soften. Add garlic and stir for a few seconds.
Add the diced tomatoes, tomato sauce, white wine, oregano, basil, salt and pepper and raise the heat to bring to a boil, then reduce to hold the sauce at a simmer. Cook, stirring often, for about 10 minutes, until thickened. Let cool.
In a large bowl, combine the prepared spinach, ricotta cheese or tofu, parsley and 1/2 cup shredded cheese. Stir to mix well. Reserve.
Bring a large pot of water to a boil, and salt the water generously. Cook the pasta shells according to package directions, about 10 minutes, then drain.
Spread about 1 cup of the tomato sauce in a 9- by 13-inch baking pan. Use a tablespoon to form heaping, 2 tablespoon-sized portions of spinach filling, then gently stuff each into a cooked shell. Place in the baking pan.