For the pistou, make a paste with the basil, garlic and olive oil by pounding with a mortar and pestle or pureeing in a blender. Press plastic wrap directly onto the pistou and refrigerate. (The pistou can be made 1 day ahead). For the beans, place all the ingredients in a medium saucepan. Bring to a boil, lower the heat slightly and simmer until tender, about 30 minutes. Drain and discard the aromatics. Refrigerate the beans. For the mussels, place the olive oil, garlic, shallot and parsley in a large wide pot over medium heat. Cook until the garlic and shallot are softened, about 2 minutes. Add the wine and mussels, cover the pot and raise the heat to high. Cook, stirring occasionally, until the mussels are opened, about 5 minutes. Strain and reserve the mussel broth. Shell the mussels, discarding any that did not open, Refrigerate. For the vegetables, measure the mussel broth and add fish fumet, if necessary, to make 2 cups. Place in a medium saucepan with with 2 1/2 cups additional fish fumet. Add the carrots, fennel and zucchini and bring to a boil. Lower the heat and simmer, skimming off the foam as it rises, until the vegetables are tender, about 12 minutes. (This recipe can be done to this point several hours ahead: refrigerate vegetables and broth.) To serve, stir the tomato and the beans into the vegetables and broth. Bring to a boil. Stir in the pistou and remove from heat. Divide the mussels among 4 soup bowls. Ladle the soup over the mussels, making sure the beans and vegetables are evenly distributed. Squeeze lemon juice over the top and serve immediately.
Remove the gills and eyes from the fish or have your fish store do it. Cut the heads and bones across into 4-inch pieces. Put them in a shallow pan and cover with cold water. Let stand for 1 hour, changing the water twice. Drain. Heat the oil in a large pot over medium heat. Add the onion, fennel, leek, peppercorns, salt, parsley and bay leaf. Turn the heat to medium-low and cook until the vegetables are softened but not browned, about 4 minutes. Add the fish bones and cook, stirring from time to time, until the bones and any flesh around the bones turn from translucent to white, about 12 minutes. Add the wine and water and bring to a boil. Boil for 10 minutes, skimming off the foam as it rises to the top. Remove from the heat and let rest for 10 minutes. Strain the fumet through a fine-mesh sieve, pressing firmly on the solids to extract as much of the flavorful liquid as possible. If you have more than 3 cups of fumet, place the liquid in a clean saucepan and boil until reduced to 3 cups. Store, tightly covered, in the refrigerator for up to 3 days or in the freezer for up to 2 months.