Load whole file in memory to simplify code
Also refactored cleanup view to use the same localized string
Process CSV uploads async using a worker then email results