Preheat oven to 350 fahrenheit
Place a roasting pan on top of the stove over a medium high heat.
Add the onions, garlic, and cayenne pepper, drizzle with enough olive oil to coat, and cook for 3-4 minutes.
Add the tomatoes, cut side down, season with a pinch of salt, pepper, and the sugar, drizzle over the balsamic vinegar and cook over a high heat for 3-4 minutes, until the tomatoes begin to caramelize.
Stir well, and then transfer to the oven for 20 - 25 minutes. Return the roasting pan to the top of the stove.
Over a medium-high gheat add the stock, bring to the boil and then simmer for 4 - 5 minutes.
Add the cream, stir well and continue to simmer for 2 - 3 minutes.
Using a stick blender, blend the soup until almost smooth but still with a couple of chunky bits (use a potato masher for a more rustic texture). Serve warm with dollops of pesto on top.
Toast the pine nuts in a dry frying pan until golden.
Put the sun-dried tomatoes into a mortar and pound with a pestle until completely broken down.
Season with a touch of salt, add the pine nuts and continue to pound with a pestle until completely broken down.
Season with a touch of salt, add the pine nuts and continue to pound until you reach a pesto consistency. Stir in the parmesan, and then add enough olive oil and sun-dried tomato oil to bring the pesto to a spooning consistency (it should provide 3-4 tbsp).