The night before, wash the beans thoroughly in a colander and pick out the rocks and earth and the occasional malformed specimen. Place them in a bowl, with enough fresh, cold water to cover them by 3 inches, and set aside. The next day, drain the beans and put them in a large soup pot. Cover with cold water and turn the burner on low. As the beans heat, foam will rise to the surface; skim this off with a large cooking spoon, and repeat until all the foam is gone. (Don't let the pot boil, because if you do. the skins will start to slip off and the beans won't hold their shape well as they cook.) Add the onion wedges, the garlic and the bay leaves. Simmer, stirring occasionally and adding water when the liquid gets low. When the beans are tender (this takes from one to three hours), remove the onion wedges and garlic. Now spoon out half of the beans, allow to cool, and puree in a food processor with the chicken broth. Return the mixture to the pot. Add salt to taste and simmer while you prepare the vegetables. Toast the cumin seeds in a non-oiled saute pan and grind them with a mortar and pestle or in an electric spice-grinder. Heat the oil in the same pan and cook the carrots, celery, and garlic until translucent. Add the cumin, thyme and chili flakes, and stir. Add the vegetables to the bean pot, deglaze the pan with a little dry Vermouth or water, and add this liquid to the beans also. Check the seasoning, simmer another 10 minutes, and your soup is ready. Serve the soup in heated bowls so that even the last bite will be warm. Top each serving with a teaspoon of Sour cream, chopped green onion and cilantro, and add a lime wedge on the side for squeezing into the soup. (Be sure to instruct your guests to do this, or they'll miss