In a large saucepan, heat the olive oil over medium-high heat. Add the bacon and fry until soft, using a fork or tongs to turn, about 2 minutes.
Add the leek and onion, and saute until soft, about 4 minutes.
Add the chicken broth, water, tomatoes, carrots, celery, soaked beans, cheese rind, basil, and crushed red pepper. (If you are using canned beans, add them in step 5 along with the spinach.) Bring to a boil, then reduce the heat to medium-low and simmer for 30 minutes.
Add the zucchini, potatoes, Baby Bam, and salt. Return to a simmer and cook for 1 hour. If your soup gets too thick before serving, you may need to add a bit more water or chicken broth.
Add the spinach (and canned beans, if using) and cook for 15 minutes.
Remove the cheese rind with a slotted spoon, and serve.
YIELD: generous 2 quarts, serving 6 to 8