Cut the beef into small chunks and put in a pot with the beef shanks and 8 cups of water (or more to cover).
Add a halved onion, 8 garlic cloves, a tablespoon of salt and 4 bay leaves, and simmer gently.
Meanwhile, you can make the sauce. Discard the veins and seeds from the dried chiles and rinse.
Put the chiles in a pot and add water to cover.
Bring to a boil, then turn the heat down and simmer for 15 minutes.
Put some water in another pan and boil the tomatoes in there until soft.
Put the softened chiles in a blender with the herbs, spices, vinegar, ½ an onion, 8 garlic cloves, tomatoes, a 1 cup of cooking liquid from the chiles.
Blend to a puree, adding more liquid if necessary.
Pour this sauce into the pot with the meat in it, straining it through a sieve.
Cook the meat mixture for another 3 to 3½ hours or until the meat is tender.
Take the meat out of the broth and shred.
Discard any chunks of fat from the meat.
Skim the liquid fat that’s rendered to the top of the stew and put in a dish.
Dip about ⅓ of a corn tortilla into the rendered beef fat you just put in the dish and then put it on a hot griddle.
Swish it around a bit so the beef fat spreads.
Add some of the beef mixture and some cheese to the tortilla and fold over.
Cook until crisp on one side, then flip and cook for 2 minutes on the other side too.
Repeat until you’ve used all the tortillas and all the meat and cheese.
Put some of the beef broth and meat in a small bowl and serve this as a dipping sauce for the tacos.