Heat oil in a large saucepan, add onion, and saute until soft, about 2 minutes. Add garlic, green onions, and ginger, stirring for 1 minute.
Add curry powder, allspice, and thyme, and cook until fragrant, stirring constantly. Add sweet potatoes, kidney beans, coconut milk, and water.
Cover the saucepan and bring it to a boil. Reduce to a simmer and cook for 30 minutes until thickened (I also mash some of the sweet potatoes).
Stir in cayenne pepper and salt.
Remove from heat. Delicious served with salad, brown rice, quinoa, or gluten-free tortilla.