For the tomato sauce:
Preheat oven to 350 degrees F.
Add oil to large skillet over high heat. Add ground beef and saute, breaking up the meat into crumbles as it cooks. Add garlic, oregano and chili flakes and cook a couple minutes. Add tomatoes and season, to taste, with sugar, salt and pepper. Simmer for 10 minutes.
For the bechamel:
In a large saucepan melt butter over medium-high heat until bubbling. Add onions and saute until translucent. Sprinkle with flour, stirring constantly and cook until the mixture begins to thicken. Gradually whisk in the wine, if using, and then gradually whisk in the milk and nutmeg and cook until smooth, thick and creamy. Combine the meat sauce and pasta, and then pour in half the pasta mixture. Spoon half the bechamel over the pasta and top with half the cheese. Repeat with the remaining ingredients. Bake 30 to 45 minutes until browned and bubbly.