[#680] Hacky solutions for Cordaid script
[#680] Fix pre_import.py when data contains unknown business units

Replace create_cordaid_business_units() with find_cordaid_business_units()
turning the process inside-out so that we loop over the data and lookup
the business units instead of the other way around.

Change create_cats_and_benches() so it logs to file properly
[#680] Make sure Project.primary_location is none for updated projects

When updating Cordaid projects the IATIProjectResource.obj_update
method deletes all related objects so they can be re-created. This leads
to Project.primary_location pointing to a deleted object so we have to
set it to None since QuerySet.delete() does not call Model.delete() for
the individual objects. (For reasons not understood a solution iterating
over the ProjectLocation objects and calling delete() didn't work.)
Merge pull request #681 from akvo/hotfix/680_cordaid_hotfixes

[#680] Cordaid script improvements