Preheat the oven to 375 degrees F. Lightly butter a 13 by 9 by 2-inch baking dish.
Bring 6 cups of salted water to a boil over high heat. Add the macaroni and cook until al dente. Drain and set aside.
Melt the butter in a large saucepan, over medium heat. Add the onion and cook, stirring constantly, until tender. Add the flour, salt, dry mustard, and paprika; mix well. Stir in the milk and cook until thickened, about 5 minutes. Add 2 cups of the shredded cheese and stir until melted. Toss in the macaroni and pour into the prepared dish. Cover the macaroni with tomato slices and season salt and pepper, to taste. Bake for 35 to 45 minutes. The last few minutes, top with the remaining cheese and return to the oven until the cheese melts. Serve hot.