1. Rinse beans under running water and pick through, discarding any stones. Place beans in a large pan. Cover with 3 cups water and bring to a boil. Boil for 2 to 3 minutes, remove from heat, cover and let stand for 4 hours. Rinse beans and drain. Place beans in a large, clean pot, pour fresh cold water over until covered by 1 inch and bring to a boil. Reduce heat and simmer until beans are tender, about 1 1/2 hours. Let cool for 30 minutes.
2. Warm oil in large pan over medium heat. Cook onion, stirring, until it begins to soften, 2 to 3 minutes. Add chili powder and cumin, if desired. Sauté for 1 minute. Add tomatoes, beans, salt and 1 cup water; bring to a boil. Reduce heat to medium-low, cover and simmer for 10 minutes. Remove from heat; stir in 1 Tbsp. juice, if desired. Top with low-fat sour cream, salsa or chopped cilantro just before serving, if desired.