I cook the beans and prepare the sausage separately, followed by a sofrito of the bacon and vegetables. We always eat this with rice. These beans are even better the next day. Epazote is a good match for black beans (makes them more easily digestible), but if you don't have any, just soak the beans for 8 hours and drain before cooking. —crispywaffle
Pick over and rinse the beans. Add to a large Dutch oven, along with 2 quarts of water. Bring to a boil, skim off any scum, and add the bay leaves and epazote.
Lower heat and simmer, covered, for 1 hour. Continue simmering, partially covered, for another 1-1/2 hours, adding water periodically to keep the beans submersed.
While the beans are cooking, prepare the sausage in a separate pan. Pierce the sausage in a few places so they don't burst while cooking. Heat a medium-sized pan over medium-high heat. Add a tablespoon of vegetable oil and add the sausage. Turn the sausage so it is browned on all sides. Add 1/4 cup water and cover pan, reducing heat to medium-low. Cook for 10 minutes, or until the sausage is fully cooked.
Remove the sausage and set aside. Drain the liquid from the pan and return it to medium heat. Add the bacon and fry until the bacon is crisp. Add the onions and fry, stirring, until they are soft, about 5 minutes. Add the cumin, oregano and salt, taking care not to burn the spices. Remove from heat and set aside until the beans are done.
Slice the sausage and add to the bacon/onion mixture. When the beans are fully cooked, add the lime juice along with the sausage, bacon and onion mixture. Cook over medium-high heat until the liquid has reduced and thickened.
Garnish with scallions or cilantro and serve with white rice.