1. in a bowl, toss together the chicken, yogurt, 3 cloves garlic, 1 tablespoon ginger, 2 teaspoons garam masala, 1 teaspoon cumin, 1/2 teaspoon turmeric, 1/2 - 1 teaspoon cayenne pepper, and 1 teaspoon salt. Let sit 5-10 minutes.
 
2. Heat the oil in a large skillet over medium-high heat. Add the chicken and sear on both sides until browned, about 2 minutes. Add 1 tablespoon butter and toss to coat the chicken. Remove the chicken from the skillet to a plate.
 
3. To the skillet, add the onion and cook 5 minutes, until softened. Add 2 tablespoons butter, 3 cloves garlic, 1 tablespoon ginger, 1 tablespoon garam masala, 1 teaspoon cumin, 1/2 teaspoon turmeric, 1/2 - 1 teaspoon cayenne pepper, and the chili flakes. Season with salt and pepper. Cook until very fragrant, about 5 minutes. Add the tomato paste and continue cooking another 3-4 minutes.
 
4. Reduce the heat to low.Add 1 cup water and the coconut milk. Stir to combine, bring the sauce to a simmer, cook 5 minutes or until the sauce thickens slightly. Stir in 1 tablespoon butter. If the sauce seems thick, thin with 1/2 to 1 cup additional coconut milk. Add the chicken and any juices on the pan and cook, stirring occasionally, until the sauce thickens slightly, about 5 minutes. Remove from the heat and stir in the cilantro. Season with salt and pepper.
 
5. Serve the chicken and sauce over bowls of rice with fresh naan. Enjoy!