Heat olive oil in a large pot set on medium heat. Add the onion and begin sauteeing till onion is getting translucent (about 3 minutes). Add the garlic and ginger, and continue to sautee for another 3 minutes, till garlic is fragrant. Add the yams, the red lentils, the tomatoes, the cinnamon, cumin, turmeric, and cayenne and give it all a quick stir to combine.

Add 4 cups vegetable stock and bring mixture to a boil. If there isn't enough broth to cover everything but at least 1 inch, add another cup of stock. When soup boils, reduce to a simmer and cook for 40-45 minutes, or until sweet potatoes and lentils are very tender. If you need more broth as the mixture cooks, add it.

Add peanut butter and stir well. Using an immersion blender, blend soup till about half of it is pureed and the other half still has texture. The soup should appear creamy, but chunks of sweet potato should be visible.

Stir in the kale and let it wilt. Season to taste, adding more salt and pepper as needed.