Melt the butter in a large pot over medium heat. (I used a large saucepan.) Add onions, and cook, stirring often, until deep golden brown and caramelized about 30 minutes. Stir in minced garlic and cook an additional couple of minutes. Dust the onions with 2 Tbs flour and continue to cook an additional 10 minutes. Continue to stir occasionally.
Stir in wine, beef stock, thyme and bay leaves. Bring to a boil. Reduce heat and simmer for about 25 minutes. This will reduce the soup down slightly and evaporate the wine.
Remove the bay leaves and thyme sprigs. Stir in the white wine vinegar and add the crushed black pepper. Salt to taste.
Preheat the broiler to high setting. Place sliced baguettes on an edged baking sheet. Broil on second from top rack setting. ( I found the top setting is too close and you can burn the bread or cheese.) Broil a couple of minutes per side or until golden brown.
Place 4 ramekins or ovenproof bowls on an edged baking sheet and ladle the soup into them. Top each with two toasted baguette slices. Sprinkle the cheese on top. (I found using a cheese grater made it very easy to slice these cheeses.)
Place under the broiler for a few minutes until the cheese has melted and is bubbly and golden brown.
Let the bowls cool a few minutes before servings.