To make the tamales: Place the corn husks in a large bowl and add enough boiling water to cover. Submerge in the water by weighting down with another bowl. Let stand until the husks soften, about 1 hour. Drain well and pat dry.
Meanwhile, heat the oil in a large skillet over medium-high heat. Add the chicken and cook, turning once, until browned, about 10 minutes. Transfer to a plate.
Add the onion to the fat in the skillet and cook, stirring often, until softened, about 3 minutes. Add the garlic and stir until fragrant, about 1 minute. Stir in the cilantro, chili powder, cumin, salt, and cayenne. Return the chicken to the skillet and add enough cold water to cover. Bring to a boil over high heat. Reduce the heat to medium-low and cover. Cook until the chicken is cooked through, about 45 minutes.
Transfer the chicken to a plate. Cool until easy to handle. Discard the skin and bones and coarsely chop the meat. Transfer to a medium bowl.
Meanwhile, let the cooking liquid stand off the heat for 5 minutes. Skim off and discard the fat on the surface. Return the skillet to the stove and bring to a boil over high heat. Cook until the liquid is reduced to a thick glaze, about 20 minutes. Scrape the glaze onto the chicken, then add the cheese.
To make the tamales, place a corn husk on the work surface. Spread about 3 tablespoons of the Classic Cornbread batter in a 2 to 3-inch square area in the center of the husk. Place 1 heaping tablespoon of the chicken in the center of the batter and top with about 1 tablespoon of the batter. Fold the sides of the husk to enclose the batter (the tamale is now about 2 1/2 inches wide). Fold over the ends of the husk so the tamale is about 3 inches long. Place the tamale, smooth side up, on the work surface. Using kitchen twine, tie up the tamale with kitchen string, gift-box fashion. Repeat with the remaining husks, batter and chicken. (You may have some husks left over since you soaked more than you needed, in case some got torn.) Stand the tamales up, side by side, in a steamer inserted in a large pot. Add enough water to the pot to barely reach the bottom of the steamer. Cover tightly and bring to a boil over high heat. Reduce the heat to low. Steam the tamales until the batter is firm (open a tamale to check), about 1 hour. (The tamales can be made up to 8 hours ahead, cooled, and refrigerated. Steam over boiling water for 15 minutes to reheat.)
Serve hot, with the Salsa Roja passed on the side.
Bring a large saucepan of water to a boil over high heat. Add the tomatillos and cook just until softened, about 10 minutes. Drain.
Heat a heavy skillet (preferably cast iron) over high heat until very hot. Cook the chiles, turning frequently, until they turn a darker shade, about 3 minutes. Do not burn them. Transfer to a plate and cool. Cut open and discard the seeds and stems. (Wear plastic gloves if your hands are sensitive, and do not touch your eyes or other delicate parts of your body until you wash your hands well.)
Puree the tomatillos, chiles, tomato sauce, onion, and garlic in a blender or food processor. Season, to taste, with salt. Cool completely. (The salsa can be prepared up to 3 days ahead, covered, and refrigerated.)
Whisk the cornmeal, flour, sugar, baking powder, baking soda, and salt together in a large bowl to combine. Make a well in the center. Whisk the buttermilk, eggs, and oil in another bowl until the eggs are well combined. Pour into the well and stir just until the batter is moistened ? do not overbeat.
Recipe courtesy of Art Smith, Back to the Table, Hyperion, 2001