private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
ImportJob job = (ImportJob)e.Argument;
job.OnProgressUpdated += new ImportJob.ProgressUpdateHandler(this.backgroundWorker1.ReportProgress);
e.Result = job.ExecuteJob();
//EXTRA CREDIT: add support for cancellation
}