How to Make It
Rinse the chiles under cold running water and shake off the excess, but do not dry. Set a griddle or cast-iron skillet over moderately-high heat until a drop of water sizzles on contact. Place the chiles, a few at a time, on the griddle and let them heat, turning occasionally with tongs, just until the water evaporates and the chiles are fragrant. Allow between 30 to 45 seconds for the ancho, slightly less for guajillos (which are very thin-skinned). The chiles should just become dry, hot and aromatic; do not allow them to start really roasting or they will have a terrible scorched flavor. Remove from the griddle as they are done and place in a small bowl. Cover generously with boiling water and let soak for at least 20 minutes. Drain the soaked chiles and reserve.
While the chiles soak, prepare the vegetables, one kind at a time. Set a heavy ungreased griddle or cast-iron skillet over moderately-low heat until a drop of water sizzles on contact. Place the unpeeled onion and garlic cloves on the griddle and cook, turning frequently, until somewhat softened, 15 to 20 minutes for the onion, and 8 minutes for the garlic cloves. Remove the onion and garlic from the griddle; when cool enough to handle, peel them over a bowl to catch the juices.
Place the tomato on the griddle, stem end down. (Started this way it will lose less juice.) Cook, turning frequently, until the skin is blackened and blistered all over, 15 to 20 minutes. Transfer to a bowl that will hold the juices. At the same time, roast the tomatillos in their husks, turning frequently to guard against scorching, until they are lightly softened all over, 10 to 15 minutes. Handle them delicately so as not to squeeze them and pierce the skins. Carefully transfer them to a bowl to catch the juices. When cool enough to handle, peel the tomato and remove the husks from the tomatillos.
Put the vegetables in a blender with the drained chiles and ground spices and blend until smooth, about 3 minutes on high. With a wooden spoon, force the puree through a medium-mesh sieve into a bowl.
In a medium saucepan, heat the lard over moderate heat until rippling. Add the puree, cover and cook for 10 minutes, stirring occasionally. Stir in 1 teaspoon of salt.
In a small bowl, mix the masa with 1/2 cup water and whisk into the sauce. Bring to a simmer and cook, whisking constantly, until the sauce is somewhat thickened and the flavors well blended, about 15 minutes.