In large pot, melt butter. Sautee onion for about 3 minutes until starting to soften. Sprinkle in flour and stir to incorporate and make a paste. Cook 1-2 minutes. Raise temperature to medium high and slowly whisk in water using 1/2 cup increments. After each addition of water, whisk and wait for it to bubble and thicken. Continue this process until all water has been incorporated and you have a thick soup base. Reduce temperature and add in all vegetables and seasonings. Stir and cover. Cook 15-25 minutes or until vegetables have softened. Stir in milk or cream and add more salt and pepper depending on preference. Serve hot.