In a medium stockpot, heat oil and cook onions, stirring occasionally, for about 12 minutes. Remove and reserve. Working in small batches, sprinkle beef with salt and sear on all sides. Remove and reserve each batch as it browns. When done, return beef an onions to stockpot. Add both types of chili powder, oregano, cumin, and cinnamon and cook, stirring constantly, for about 5 minutes. Add tomatoes and stock and bring to a boil. Lower heat and simmer uncovered for an hour. Stir in garlic and chiles. Simmer until thickened, about 30 minutes. Mix in kidney beans and simmer for another 5 minutes.