Hi Graham,
What you need to do if you are using the feeds module is add a few more to the pot:
Filefield sources allows you to specify external URLs as the source for the image fields and this works for feeds too. This will allow feeds to use the URL for the image in the CSV file to pull the image in to the files directory of the website. On top of that filefield paths allows you to on a field per field and content type basis to specify the path that the files end up when they are added and therefore imported.
Better still fieldfield paths can accept tokens so that folders can be created programatically :)
I used this to transfer all the content from a Drupal 6 website to a Drupal 7 version of it by creating RSS feeds of the content on the D6 version and pulling them in using the Feeds and Xpath Parser but this will also work for CSV files too.
If you need a hand setting this all up let me know!