Cut the flank steak into 2 or 3 large pieces that will fit comfortably in your slow cooker. Season the meat with salt and ground black pepper.
Heat about 2 tablespoon of oil in a skillet over medium high heat. Working in batches if needed, add the steak and sear the meat on both sides for about 5 -6 minutes or until browned. Transfer the meat to a plate.
Add the remaining oil to the skillet, the sliced onions and bell peppers and cook for about 5 - 6 minutes or until the vegetables become tender. Lower the heat to medium low and add the garlic. Cook for an additional minute.
Place the carrots and celery at the bottom of the slow cooker. Place half of the pepper and onions on top. Place the seared flank steak on top of the vegetables and pour the rest of the onion/pepper mixture on top.
Stir in the wine, broth, tomato paste, crushed tomatoes, oregano, cumin, all-spice, paprika, and bay leaves. Gently mix to combine.
Cook on low for 8 hours hours or on high for 4.5 to 5 hours until the beef is tender and shreds easily with 2 forks.
Remove the carrots, celery and bay leaves from the slow cooker. Remove the beef from the slow cooker and using 2 forks, pull apart into thin, long shreds.
Return the shredded beef into the pot and mix to combine. Add the olives and chopped cilantro or parsley and mix well. Season with salt and ground black pepper to taste and cook on low for an additional 20 minutes. Serve garnished with extra cilantro or parsley if desired.