Heat a heavy bottom stock pot or enameled cast iron dutch oven over medium heat and add oil, when the pan is heated, add the ground chicken and cook until it's nicely browned. I usually do this in two batches - if you try to brown all of it at once you'll crowd the pan and you'll end up steaming it, which won't give us those delicious brown bits on the bottom of the pan and on the meat. Those brown bits = flavor.
Once the chicken is cooked, remove from pot. Feel free to add another spalsh of oil into the pot if needed, and add the onion, sweat it for 2-3 minutes, then add the diced peppers and sweat for several minutes until everything develops a bit of color.
Add the cumin, chili powder, chipotle chiles in adobo and sauce, diced garlic, and a pinch of salt, stir and saute for several mins.
Add the chicken broth and the canned tomatoes to the pot and give everything a big stir to deglaze. Bring the mixture to a boil, and quickly turn the heat down to a simmer.
Add the cooked chicken back to the pot, and keep the heat on a low simmer (keep the lid off) and reduce the chili for 20 minutes. Add the beans and simmer for additional 20-25 mins, until the chili has thickened significantly. If you want a richer tasting sauce, throw in the butter but feel free to omit it to keep it a bit lighter. Then stir in the freshly squeezed lime juice and freshly chopped cilantro.
Serve with toppings of your choice!