Create a mise en place by slicing the onion, preparing the garlic and ginger pastes, and setting aside the whole and the powdered spices. Keep the whole vs. powdered spices separated. Get the chicken out of the refrigerator so it starts coming up to room temperature.
In a large heavy pot, melt enough ghee to coat the bottom of the pan and saute the onion on medium-low with a dash of salt. Cook until they get quite browned. Be careful not to scorch them. If you run out oil, you can add a bit of water to prevent burning. The browning on the onion is critical to the flavor and color of the curry.
Add a touch more ghee and the whole spices. Toss with the onion and toast them for just 1 minute in the ghee. Sizzle but be careful not to burn.
Add in a generous pinch of salt and powdered spices and toss with the onions and whole spices. Cook for just 1 minute. If you think your pan is too dry, add a splash of water.You will start to see the color of the ingredients in your pot darken and become "currylike". Now, add the aromatics: ginger, garlic, tomato. Cook again for just 1 minute.
Add the chicken, including the marinade. Mix everything well, and turn your burner to low. Add 1/3 cup water. Scrape up the flavorful bits of frond on the bottom of your pan.
Add the fenugreek and curry leaves. Add lid and let simmer at the very lowest your stove can go. Cook for about 45 minutes.
Remove lid and add salt if needed. If you find that there is too much water or it is runny, remove the lid and let the sauce reduce until you have a thick curry. On the off-chance it is too thick, add a touch of water or broth.