Feature/983 data importer

# Warning

# Info

The release includes the new NPSP Data Importer, which helps you easily import your data into the Nonprofit Starter Pack

# Issues

Fixes #983 
Fixes #1020 
Fixes #1015 
Fixes #1014 


This means that the whole batch fails with a single error, right? I think going with batches of 1 is the way to go, but I'm not sure if including the option to do larger batches is really worthwhile, as I can't think of what the use case is. If it were, we could implement database.insert with opt_allOrNone flag set to false to allow partial list inserts, and parse the errors after. Not saying it's worth the effort, just a lot of caveats for people who want to increase the batch size.