Heat the olive oil over medium heat in a large soup pan. Add the onions, garlic cloves and carrots and cook, stirring occasionally, until onions are soft and translucent, about 8 minutes. Do not brown. Add the black beans, chicken broth, oregano, coriander, cumin, cayenne pepper and salt and bring to a boil. Reduce the heat, cover and simmer gently for about 15 minutes. Purée the soup using a hand-held immersion blender until very smooth and creamy. (Alternatively, you can use a standard blender to puree the soup in batches; see note.) Stir in the lime juice and season with salt and pepper to taste. Ladle the soup into bowls and top each bowl with a dollop of sour cream and freshly chopped cilantro. Note: If using a standard blender, purée the soup in batches, being careful not to fill the jar more than halfway. Be sure to leave the hole in the lid open and loosely cover with a dish towel to allow the heat to escape. Pour the blended soup into a clean pot.