Preheat the oven to 350°F. Add the oil to a Dutch oven and place over medium heat until hot. Add the onions and cook for about 5 minutes or until they begin to soften. Season with the salt and pepper and add the butter.
Reduce the heat to medium-low and cook the onions, stirring occasionally, for 40 to 45 minutes, until the onions are browned and caramelized.
While the onions cook, arrange the baguette slices on a wire rack inside a large rimmed baking sheet. Drizzle each side of the bread slices with olive oil. Bake for 10 to 12 minutes, turning halfway through, until the crostini are toasted.
Sprinkle the flour over the onions, and stir until incorporated. Increase the heat to medium high. Deglaze the Dutch oven by pouring in the sherry and scraping the browned bits on the bottom of the Dutch oven with a wooden spoon.
Stir in the beef stock, soy sauce, bay leaves, and thyme. Bring to a boil. Reduce the heat and simmer, uncovered, for 15 to 20 minutes or until the flavors are developed.
Preheat the broiler to HIGH with the oven rack in the center of the oven. Place 6 broiler-proof soup bowls onto a rimmed baking sheet. Spoon the soup evenly into the bowls. Top with the baguette slices and cheese. Broil for 2 minutes or until the cheese is bubbly and browned.
Remove the from the oven and garnish with more thyme before serving.