In a large pot over medium high heat, heat olive oil and cook onion until soft, but not brown, about 5 minutes. Add the garlic, chili pwoder, cocoa, cinnamon cumin, and allspice and stir well, cooking for an additional minute or so. Add the tomato paste, tomato sauce, beef broth, and ground beef, breaking up the beef with a wooden spoon. Add the bay leaves and bring to a simmer and cook for 30-45 minutes. Add the sugar (maybe start with 1 tbsp if you don’t want it too sweet) and season to taste with salt and pepper.