Preheat oven to 300 F.
In a bowl, mix together the garlic, onion powder, smoked paprika, cayenne, chile powder and salt.
Rub the mixture over all surfaces of the roast. Set aside.
In another bowl, mix together the canned tomatoes, chipotle chiles in adobo sauce, red onion, paprika, salt and pepper.
Get a dutch oven (preferably sealed cast iron) and heat up the fat until it is shimmery. Sear the roast on all sides.
Once the roast is completely seared, add the braising liquid that you mixed up. Try to pour it into the dutch oven on the side so you don't remove the rub from the roast.
Put a lid on the dutch oven and place in the oven for at least four hours. The roast is done when it easily shreds apart with a couple of forks. If you have to really pull the meat, it needs more time.
Shred the roast in the dutch oven and then return to the oven for another hour.
Drain any excess liquid from the meat and then juice the 1/2 orange into the meat and add the orange zest and lime zest. Mix well.
Serve on soft taco shells with shredded lettuce, fresh tomatoes, grated cheddar, pickled red onion and avocado cream
The nutrition info is only for the meat.