Heat oil in very large pan (approx. 7 quarts). Fry onion and garlic until soft. Add chili, coriander, and cumin. Stir well.
Add peppers and break up ground beef into the pan and, using a fork, keep turning it to separate as the meat browns. Add diced tomatoes, ketchup, tomato puree, and water. Stir to make a rich, red sauce. When chili starts to boil, sprinkle cocoa and stir together. Add the beans and simmer partially covered for 1 1/2 hours. At this point you can cool and freeze the chili, or just keep it in the refrigerator overnight.
Preheat oven to 425°F.
Pour chili into a large, wide dish or keep in the dish you cook it in if it is ovenproof.
Combine salt, cornmeal, flour, baking powder, and cinnamon in a bowl. Whisk together buttermilk, eggs, honey, and oil in a jug. Then stir into the dry ingredients mixing to make a vivid yellow batter.
Pour cornmeal topping over chili, or blob over to cover the top as evenly as possible.
Sprinkle the cheese over top of cornbread and bake in oven for 30 minutes or until cornbread topping is risen and golden, and chili underneath is bubbling. (Optional - reheat chili on stove before baking to speed up prep time.).
Let chili stand for 5 minutes once out of the oven, before cutting the cornbread top into squares or slices to serve with a helping of chili underneath.
Serve with sour cream or guacamole.