Toss chicken with 1/2 cup of BBQ sauce and set aside.
Heat a large soup-type pot over medium-low heat. Add olive oil and butter, then toss in sliced onions with salt and pepper. Cover and cook for 15-20 minutes, stirring occasionally until caramelized. While onions are cooking, prepare water for pasta and bring to a boil. I only cooked my pasta for about 5 minutes because it will go directly into the hot cheese sauce. I tried to time it so my pasta was done only a few minutes before adding it to the sauce, but if it’s done much earlier, just set it aside in a colander.
Increase heat to medium under the onions and add flour, whisking constantly to create a roux. Cook for 5 minutes, until golden and fragrant, stirring often. Add in milk, whisking constantly, and stir for another 5 minutes until slightly thickened. Reduce heat to medium-low and add in grated cheeses and mustard. Continue to stir until sauce is creamy and cheese has melted. Add in shells and stir to coat, then toss in chicken. Drizzle the rest of the BBQ sauce on top.
Serve immediately with green onions, bacon, parsley and cilantro on top – and more sauce if desired!
Note: this reheats well – just add a splash of milk and stir, stir, stir.