Preheat oven to 350 degrees. Butter a 2 quart oven proof casserole dish. Melt butter in a large skillet, add onion and sauté over medium heat for 7-8 minutes. The onion should be translucent, but not brown. Whisk in the flour and salt, whisking constantly until flour is mixed into the onion. Gradually stir in the sour cream until smooth. Add the corn and celery and heat through. If you want to make this ahead of time, stop here. Pour corn mixture into the casserole dish. Cover and put in the refrigerator. When ready to cook, remove from refrigerator, carefully stir in 3/4 of the bacon. Sprinkle the rest of the bacon on top. Bake until bubbly, 30-40 minutes.