Heat a large saute pan over medium heat and pour in enough olive oil to coat the bottom of the pan. Add the garlic and onions and cook until soft and nicely caramelized, about 10 to 12 minutes.
In the meantime, season the chicken with salt and pepper. Sprinkle the flour over the chicken and toss to coat. Heat another large saute pan over medium-high heat and add 3 tablespoons of olive oil. Cook the chicken until it is lightly browned, about 6 to 8 minutes.
Once the onion mixture is caramelized and softened, add the serranos, paprikas, cumin, and oregano. When the chicken is done, transfer it to the pan with the onions. Pour in the broth or water and bring to a boil. Reduce the heat and simmer until the sauce is thick and delicious, approximately 20 minutes. Adjust seasoning with salt and pepper.
To serve the tacos: Put the toppings and chicken filling in bowls and allow guests to build their own tacos.