Further work on upload from CSV (with progress)