You can't officially consider yourself a cook until you have your own chili recipe. Of course, as with all other recipes, this one is constantly subject to modification.
Soak the beans in water for 12 hours. (Cover the beans with water, plus an inch or two extra water. Cover the bowl with plastic wrap, and leave it on your countertop for 12 hours.)
In a large dutch oven (preferably enameled due to the tomatoes), heat oil at medium stovetop heat until it shimmers. Sautee onion and garlic, then add ground beef. Cook for about ten minutes, until the beef is browned. Drain excess grease, if any. Drain the beans, and add the beans to the pot. Add tomatoes, then stir in all of the additional ingredients except the cilantro. Turn stovetop heat to low, cover pot, and let it slow-cook overnight. The next morning, we have chili. Stir in cilantro. Stir in cheese. Serve with more cheese on top.