Melt butter in a 4 - 5 quart heavy pot over medium heat.
Once the butter is melted add the onions, sugar, and salt.
Cook uncovered until onions are very soft and golden - adjust heat to avoid burning onions. This should take approx. 10 - 15 minutes.
Add flour and stir until flour is well mixed.
Stir in wine, follow quickly with the broth, water, bay leaves, and pepper.
Reduce the heat to low, cover and simmer in a slow rolling boil for 15 minutes, stirring occasionally.
Discard bay leaves and you can now save the soup or continue to serve.
While the soup simmers, put oven rack in middle position and preheat oven to 350 fahrenheit.
Arrange bread in 1 layer on a large baking sheet and toast, turning over so both sides are nicely toasted.
Increase oven temperature to 425 fahrenheit.
Ladle onion soup into the bowl(s), and then float the bread in each
Slice or grate enough cheese to cover tops of bread then sprinkle with parmesan.
Broil in the oven with the rack in middle position, until cheese is melted and bubbly
Broil for roughly 10 minutes but be careful not to burn the cheese, keep an eye on your cheese!