In a large heavy bottomed pot, heat the olive oil over medium low heat. Add the onions, bell peppers, carrots, garlic and salt and sauté about 10 minutes. Add the spices, chili powder, cumin, cinnamon, coriander and oregano and cook for 3 minutes.
Once all vegetables are soft, add the beans and then add the canned tomatoes and stir, about 5 minutes.
Finally, add the water and bring to a boil, then let simmer for about 15-20 minutes.
Stir in the lime juice and add salt if needed. Sprinkle each serving with grated cheese, pickled jalapenos and cilantro.