Heat a heavy-bottomed frying pan and dry-roast the tomatoes and garlic. Meanwhile, heat the butter and a tablespoon of oil in a large, heavy-bottomed pan and when it is gently foaming add the onion and herbs.
Sweat for about five to ten minutes, until the onion is soft, then add the garlic. Cook for another few minutes before adding the tomatoes and Chipotles en adobo, if using, seasoning well with salt and pepper.
Cook gently for a few minutes before adding the beans (and their cooking liquid if you made your own).Cook a little longer before adding the stock and lime juice, then simmer gently for 10 to 15 minutes so that the flavours can develop.