Preheat the oven to 375. Grease a large baking sheet with a little of the olive oil.
Place tomatoes in pan cut side down and drizzle with olive oil and sprinkle with salt and pepper. Roast until they start to char and shrivel (no need to turn over), 40-50min. Let cool on the pan a bit.
Turn the oven up to 400. Bring a large pot of water to boil and salt it.
Cook the milk in a small saucepan over med-low heat. When small bubbles appear on the sides, turn off the heat and let stand.
Cook the pasta to the point where it is almost done. Drain and rinse.
In a saucepan over med-low heat melt 3 T butter. Add the flour and cook, stirring until the mix browns, about 5 minute Add about 1/4 c milk, whisking. As soon as it is smooth, add a little more milk and whisk. Continue to do so until the mix is thick and smooth. Add the cheddar or gruyere and goat cheese and stir. Season with salt and pepper to taste.
Pour the sauce over the noodles. Toss in the pine nuts, tomatoes and basil.
Use the rest of the butter to grease a 9x13 inch pan and turn pasta mix into it. Top with bread crumbs and bake until bubbling and brown, about 15 minutes. Serve piping hot.