Heat olive oil in a large pot over medium-high heat.
Saute onion until tender.
Add all remaining ingredients except beans, corn, cilantro and lime juice.
Bring mixture to a boil, reduce heat, cover and simmer for 30 minutes.
Add in remaining ingredients and cook 10 more minutes.
Serve with optional toppings and sides (cheddar, sour cream, green onions, avocados, etc.).