Soak cashews in water overnight. Drain when ready to use. If there isn't time for this step, soak cashews in boiling water for 1 hour and drain to use.
Add cauliflower to a steamer, and steam over medium high heat for 15 minutes.
In a blender, add steamed cauliflower, soaked cashews, and 3/4 cup water. Process until a very smooth cream is formed. Set aside.
In a saucepot, add olive oil and onion and garlic, and saute for 5 minutes until lightly browned.
Add chopped carrots and celery, and saute another few minutes, then add diced tomatoes, water, and vegetable bouillon . Bring back to a boil, and then simmer on medium heat for 20 minutes.
Reserve 1/2 cup of the "cream, then add tomato soup to the blender, and process until very smooth.
Return soup to pot, mix in fresh basil, and season with sea salt and black pepper to taste.
Garnish soup with "cream", and then add extra fresh basil and a sprinkling of parmesan cheese if desired.