Fry the ground beef in a little oil, stirring continuously until golden brown. If you don't stir it while it's cooking it may go a little 'clumpy and lumpy'.
Once lightly browned add onions, carrot and garlic and continue to cook on medium to high heat.
If you're using wine, add it now and leave it to simmer for a few minutes.
Add the can of tomatoes, beef stock and basil, reduce the heat and simmer, covered, on low for about 10 minutes.
Add the rest of the ingredients and simmer for a further 10 minutes, stirring every now and then. The water and cornstarch seem to bring everything together! Serve on spaghetti or your favorite pasta.