Depending on which method you choose - either take the two cups of dried beans, or two cups of soaked beans, and put them in a large pot with the smashed garlic and the halved onion, and squeeze in the juice of the orange. Add the halves to the pot.
Cover with water about 3-4 inches and set on a high heat until water boils. Turn the heat down low and simmer for as long as you can - for the unsoaked beans about 3-4 hours is good, and soaked beans will need about two hours. Top with water as necessary to keep them covered.
When the beans are tender, remove the orange and onion, and turn up the heat to evaporate any of the cooking water left. When there is only a few tablespoons left, turn the heat down to medium and add all the rest of the ingredients except lime juice.
When all is heated and beginning to bubble, turn the heat down and simmer for 30 minutes or so. Taste for seasoning and add whatever is lacking. Feel free to salt generously, also.