Heat the oil in a large pot over low heat. Add the onion and cook until translucent. Add the pepper flakes and pork, raise heat and brown (about 10 minutes). Mix in the seasonings and cook 3-5 minutes. Add the remaining ingredients and bring the mixture to a boil. Reduce heat to a simmer, cover and cook for one hour. Uncover and simmer for an additional hour (or until the meat shreds easily).
Remove the pork from the liquid, using a slotted spoon. Refrigerate meat until cool. Place the liquid over high heat and keep at a low boil until reduced to 1 1/2 cups - about 30 minutes. When the pork is cool, shred it using fingers. Mix it into the sauce and heat through. Use as a filling for tacos or burritos. This also works well as the main ingredient for taco salad. Makes about 6 cups.