Wash the beans and sort through them to remove any foreign particles or broken beans. In a stockpot, cover the beans with cold water by 6 inches and soak them for 6 hours or overnight. Be sure the beans remains covered with water during the soaking process. Drain the beans and return them to the same pan. Cover them with fresh water by 1 and one-half inches. Add the minced onions, chili powder, salt and cilantro. Stir to blend. Bring the beans to a boil over medium heat. Reduce the heat, cover, and cook until the beans are tender, about 2 and one-half hours. From time to time, check and stir the beans. If necessary, add water as needed. Near the end of the cooking time, the liquid should be almost absorbed. Close to serving time, heat the olive oil in a large saute pan. When the oil is very hot, add the diced onions and peppers and cook them quickly, about 6 minutes, stirring and tossing, until crisp but tender. Stir this mixture into the beans.
Serve at once.