Put all the ingredients, except butter salt and pepper, in a pot and cover with water.
Bring to a boil and then lower the heat to a simmer for 30 minutes, covered. Add water, 1 cup at a time, if it feels too thick. Remove from heat and let it cool a bit.
With an immersion blender, puree the ingredients until smooth.
Return to the heat and bring to boil.
Remove from heat and add butter, salt and pepper to taste.
Notes
Add a little bit of lemon juice if you want a bit more acidity.
You could also add a dash of ground coriander or fresh coriander leaves.