Start by putting a pot of salted water on to boil. Then get to work chopping the onion and bell pepper - keep them separated.
Heat the olive oil in a skillet over medium heat. Add the onions and saute for 5 minutes, stirring frequently. Then add the tomatoes and bell pepper. Season with salt and pepper and bring to a steady simmer and let reduce while you prepare the sauce.
Once the water comes to a boil, add the pasta and cook it until it is al dente. Reserve ¼ cup of the pasta water before draining the pasta.
Use the same pot that you used to cook the pasta to prepare the sauce. Melt the butter over medium heat and whisk in the flour. Then whisk in the milk and bring to a slow and steady boil, stirring frequently to thicken the sauce. Then add the goat cheese. Season to taste with salt and pepper. Then stir in the tomato and vegetable mixture.
Add the pasta and the pasta water to the sauce. Stir in the spinach, letting it wilt. Serve right away.