Halve the leeks lengthwise and rinse away any grit. Thinly slice the leeks crosswise. In a small square of cheesecloth, tie together bay leaves, thyme, sage, parsley and celery leaves if using. Melt the butter or heat the oil in the bottom of a large pot over medium-high heat. Stir in the leeks and cook, stirring frequently, until leeks are soft and dark golden brown, 10 to 15 minutes. Stir in the garlic for the last 3 minutes of cooking. Stir in stock or water, the sachet of herbs, the salt and pepper. Bring to a boil over high heat, then reduce immediately to medium-low; simmer for 5 minutes. Add the potatoes and simmer soup until potatoes are very tender and falling apart, about 45 minutes. Taste and adjust seasoning. If desired, drizzle a small amount of cream into each bowl when serving, and top with parsley for garnish.