Grind the ingredients listed under 'to grind' in separate batches & keep aside. Heat oil in a pan and add the finely sliced onions. Cook till it becomes golden brown color. Add the set 1 ground ingredients. Cook for 2-3 minutes till the raw smell goes. Add set 2 (tomato & coriander paste) ground ingredients. Mix well. Cook for a few minutes (3-4 mins) till the oil starts appearing. Add salt & cleaned chicken pieces. Mix well & make sure that chicken pieces are coated well with the masala. Add 1/2 cup water, give it a stir. Cover & cook till the chicken is done.
Dont forget to check out the water level & gravy consistency of the curry, in between. Add more water if required. Adjust the consistency of the gravy as per your taste. This curry has a medium thick gravy.
Notes
I've made this both coconut oil & sun flower oil. Though it was good both the times, I'm slightly leaning towards coconut oil :) The gravy tends to thicken as the curry rests, so adjust the gravy accordingly, but dont make it watery. You can adjust the measurements of spices to suit your taste.