Preheat oven to 375F/190C.
Slice each of the tomatoes in half across the grain and lay them in an oven dish, cut side up. It's fine if they are quite tightly packed, but have them in one layer.
Finely chop one clove of garlic and sprinkle it over the top of the tomatoes, along with some salt and pepper, the leaves from 2 sprigs of thyme and around 1-2tablespoon of olive oil.
Scrape or peel the carrots, and chop off the end, peel the onion and cut both into large chunks. Peel the other clove of garlic but leave whole. Toss all with a little olive oil and put in a separate oven dish (or along with the tomatoes, if you have space.
Place the tomatoes, carrot and onion into he oven and roast for around 1 hour until the tomatoes are starting to caramelize on top, and the carrots are tender.
Remove from oven and put all in a blender with the stock, making sure you get all the nice juices from the oven dishes (I tend to put some of the stock in the dish to help clean it out then pour in with the rest of the ingredients). Blend until smooth. If freezing, transfer to container(s) suitable for the freezer.
When using, either immediately or after defrosting, heat the soup through and simmer a few minutes before serving.
To make the basil butter, mash together the butter, chopped basil and lemon juice until well combined. If you want to freeze, then form it into a ball/log in cling wrap and put in a freezer bag.
To use, cut off a chunk big enough for the number of bowls you are serving (around 2tablespoon is enough for two bowls), melt it in a skillet/frying pan then add small-diced chunks of bread. Cook for a couple minutes until lightly brown and crisp, turn then cook the other side before serving on top of the bowls of soup.