Preheat oven to 300 F degrees.
Cut up the meat into bigger pieces that are about 2 inches. Place the meat in a cast iron pot, add all the spices, onion, juice from the orange, the remaining orange halves, chopped pepper. Pour the water over meat and cook on medium high until the water starts to boil.
Cover the pot and place it in the oven for about 3 hours at 300 F degrees until the meat falls apart when prodded with a fork. If you cook this over stove top, it will take a bit longer, about 4 hours.
After the 3 hours, remove the meat from the pot with a slotted spoon and place it on a baking sheet lined with aluminum foil. Remove everything else from the pot, except the liquid. Cook the liquid over medium high heat for about 20 minutes until it reduces to about a cup of liquid.
In the mean time, take 2 forks and start shredding the meat into smaller pieces. After the liquid has reduced cover the meat with it.
Place the meat under the broiler, for about 5 to 10 minutes, you should watch it though, each oven is different and you don't want to burn it. Take the meat out, flip it over the other side using a spatula and then place it under the broiler again for another 5 minutes or so. You want to make sure that it's nicely browned.
Serve on tacos with salsa and avocado slices.