Prep all the ingredients first so you can just add them to the pan as needed.
Heat the oil and butter over medium high heat in a large skillet with a lid. Add the onions, cilantro stems and ginger--and chili if using. I often leave this out. Cook 10 minutes or so, stirring frequently.
Add the curry paste, chicken, coconut milk, coconut, diced tomatoes and garbanzo beans. Fill the coconut milk can halfway with water and add that to the pan. Cover, bring to a simmer, stir, recover and cook 30 minutes, stirring now and then.
Make your rice. Dish up the yogurt and chutney in small dishes for the table.
Sprinkle the fresh cilantro leaves over the curry.
Serve curry over rice with yogurt and chutney at the table.