Beans: In a large pot, combine the beans, the whole half onion, carrot, celery, whole garlic cloves, bay leaves and thyme bundle. Fill the pot with water to cover the surface of the beans by 2 inches. DO NOT add salt here! Adding salt at this point can prevent the beans from cooking and make the skins of the beans tough or make them break. Bring to a boil, then reduce the heat to a simmer. Simmer for 1 hour and then do the "5 bean" test. Bite 5 beans, if they are all properly cooked, continue on, if not cook the beans for another 10 to 15 minutes and try again.
When the beans are cooked, turn off the heat and season the water abundantly with salt. This will allow the beans to absorb seasoning without making the skins tough. Let the beans sit in the salted water for 15 to 20 minutes. Remove the onion, carrot, celery, garlic, thyme and bay leaves. Reserve 1 cup of bean cooking water, strain the beans and set aside.
Stew: (This can be started while the chickpeas are cooking! Multitasking! Woohoo!)
Coat a large wide pot with olive oil, then add the diced onions, salt, to taste, crushed red pepper, ground cumin and fennel seeds. Bring the oil to a medium heat and cook the spices until they are very aromatic and the onions are soft, 8 to 10 minutes. Add the 2 smashed garlic cloves and cook another 2 minutes. Add the diced tomatoes, and zucchini. Season with salt and taste, adjust the seasoning if needed (it will). Cook the tomato-zucchini mixture for about 15 minutes. Add in the cooked chickpeas and reserved bean cooking water and simmer until all the bean water has evaporated and the mixture looks like a stew, 15 to 20 minutes.
Transfer the stew to a serving bowl and serve immediately or at room temperature.
This is a think ahead recipe, chick peas MUST be soaked overnight in order to cook properly. Canned chickpeas can be substituted, just pick up the recipe where the stew part starts.