1. Put the oil in a large pot over medium-high heat. When it's hot, add the ground meat and sprinkle with salt and pepper. Adjust the heat so it sizzles steadily, and cook, stirring occasionally to break it up, until the meat browns all over (5-10 minutes).
2. Add the onion, and cook, stirring once in a while, until it softens and turns golden (3-5 minutes). Add the garlic, chili powder, cumin, and oregano, and cook, stirring constantly, until the mixture becomes fragrant (another minute).
3. Add the tomatoes, chili, and beans to the pot, along with enough water to cover everything by 2-3 inches. Bring to a boil, then lower the heat so the mixture bubbles steadily, but not furiously, and cover. Cook, undisturbed, for 30 minutes. After that, stir the chili every 20 minutes or so and adjust the heat so it continues to bubble gently; add more water, 1/2 cup at a time, if the chili starts to stick to the bottom of the pot.
4. When the beans begin to soften (30-60 minutes, depending on the type of bean and whether or not you soaked them), sprinkle with salt and pepper. Continue to cook, stirring occasionally and adding water if the pot looks too dry, until the beans are quite tender but still intact--this will take about the same amount of time as it took for them to soften. When the beans are very tender, taste, adjust the seasoning, and serve, garnished with the cilantro.
Change It Up!
Chili with Canned Beans: Using canned beans instead of dried cuts the cooking time down to about 35 minutes: Drain and rinse about 4 cups, or 2 (15-ounce) cans, of canned beans; add them instead of the dried beans in Step 3. Don't add any water. Bring mixture to a boil, reduce the heat to a bubble, cover, and cook, stirring occasionally, until everything thickens (20 minutes or so). Then continue with Step 4.
Chili with All Sorts of Dried Beans: Try black beans, white beans, chickpeas, or lentils (lentils will be ready 30 minutes after you add them to the pot).