Cheesy Pasta Bake with Chicken, Spinach and Tomatoes

Simple, easy and delicious!  If you're pressed for time, you can prepare this in advance, but doing all the prep work necessary before baking.  Refrigerate for up to 24 hours, then bake it according to the directions.  The flavors are absolutely wonderful in this dish.  The cheese is all melted and yummy, while the tomatoes give it that fresh kick.  Really good stuff!  Enjoy!
-1 lb pasta (any kind you like; I used bow tie this time)
-2 Tbs salted butter
-1 small onion, finely chopped
-3 garlic cloves, minced
-4 oz cream cheese, at room temperature
-1 cup sour cream
-1 cup milk (don't use lower than 2%)
-1/2 cup parmesan cheese, shredded
-2 cup mozzarella cheese, shredded, divided
-1 tsp salt
-1 tsp pepper
-2 cups packed baby spinach, roughly chopped
-1 large chicken breast, cooked and cubed OR 2 (12.5 oz each) cans chicken breast in water, drained
-1 large tomato, cored and diced
Preheat oven to 400 F.
Cook the pasta according to package directions. Drain, rinse with cold water, drain again, cover and set aside.
Meanwhile, melt butte in large saute pan.  Add the onion and garlic and cook for about 4 minutes.  Stir in the cream cheese and cook until melted.
Reduce heat and add the sour cream, milk, parmesan cheese, 1 cup of the mozzarella, salt and pepper.  Mix well and cook until cheese is fully melted.
Add the spinach, chicken and tomato.  Mix well.  Toss in the pasta and give it a good stir.
Pour pasta mixture into 9x13 baking dish.  Sprinkle on top with remaining cheese.
Bake in preheated oven for 20-25 minutes or until cheese is melted and golden brown.
Remove from oven, let it sit for 5 minutes, scoop onto plates and enjoy!