Soak cannellini beans overnight by placing in a large bowl and covering with cold water. Leave at least 3 inches of water for the beans to expand.
Drain and rinse the soaked beans and place in a slow cooker.
Add remaining ingredients, except pesto, and stir to combine.
Set the cooker to LOW, cover, and let cook 8 hours, or until beans are tender.
Drain off about 1/2 of any excess liquid, then use a potato masher or heavy spoon to mash 1/2 of the beans into the remaining liquid, thickening the soup.
Season with additional salt and pepper to taste, if desired.
Serve each bowl of soup topped with a large spoonful of basil pesto.
Though you can find basil pesto in jars near the pasta sauces, I prefer refrigerated pesto sold in the deli or near the refrigerated ravioli. Look for pesto with pine nuts in the ingredients for the best quality.