Cut the chicken into 4 pieces: 2 leg quarters and 2 breast halves. Make incisions in the flesh with a sharp knife. Put the chicken in a deep bowl.
In a small bowl, stir together chile powder, lemon juice and salt, and rub onto chicken pieces. Cover the bowl with plastic wrap and put in the refrigerator for 30 minutes to marinate.
Make the marinade: Put the yogurt in a bowl, add the chile powder, salt, ginger paste, garlic paste, lemon juice, garam masala and mustard oil and stir.
Add the marinade to the chicken and toss so that all the pieces are well coated with it. Cover the bowl again and put it in the refrigerator for 3 to 4 hours to marinate.
Cut the onions into round slices and then separate the rings. Put in a bowl of iced water and soak for 30 minutes. Drain well and set aside in the refrigerator until needed. This will keep the onions crisp.
Preheat the oven to 400. Put the chicken pieces onto metal or presoaked wooden skewers. Arrange in a single layer on a rimmed baking sheet, and cook for 10 to 12 minutes or until almost cooked through. Baste with butter and cook for 8 more minutes.
Sprinkle with chaat masala and serve with onion rings and lemon wedges.