*Just a quick, but important note. I prepared this recipe using one cast iron skillet, besides the pot I cooked the pasta in.
In a the skillet, cook the bacon until crispy. Drain onto a plate lined with paper towels. Drain all of the grease leaving just 1 tablespoon. Reserve the bacon grease. Add 1 tablespoon of butter and all of the sliced onions. Season lightly with salt and pepper.
Turn the heat to medium/low on onions and continue cooking until caramelized. This could take up to 30 minutes and you need to stir often. While doing this, you could cook your pasta according to package directions, drain, rinse in cold water and drizzle with a little olive oil so it does not stick.
Preheat oven to 350 degrees F. Remove onions from skillet onto a plate, set aside. Add 2 tablespoons of butter to skillet and 1 tablespoon of bacon grease. Whisk in 2 1/2 tablesppons of flour and cook for a few minutes.
Whisk in the milk until there are no more lumps. To the milk, you are going to add all of the ingredients in the order listed minus the cheese. Cook on medium/low until the sauce thickens. Remove from heat, add 1 cup mozzarella and 1 cup Chihuahua cheese and stir just until melted.
Fold in the cooked pasta, half of the bacon and half of the caramelized onions. Top with remaining cheese, bacon and onions. In a bowl, mix panko with 1 1/2 tablespoons of bacon grease and oregano. Spread the breadcrumbs evenly over mac n cheese. Loosely cover with foil paper and bake for 25 minutes. Uncover and cook under the broiler just until breadcrumbs turn golden brown. Remove from oven and let mac n cheese rest for 15 minutes before serving. Yields 6 servings.