Additional improvements to Import CSV performance
Additional improvements to Import CSV performance

- Now uses a cargo data structure to insert to the db in bulk
- Significantly faster than the previous method. Now inserts 100k rows per 20s.
- Rows for the CSV are stored in an array. When this array is of length bufferLength, the array is passed to the cargo async function which then passes the array to the Sequelize bulkInsert method for insertion.
- CSV parsing is limited by the ability of the database to insert data
- Possible speed improvement would be to buffer data from the CSV while the cargo processes the previous buffer. Cost is that this increases demand on memory (only 1gb can be assumed based on Digital Ocean's cheap plan).
- Another speed gain would be to increase the constant bufferLength. This determines how many items to process at any one time.

karuppiah7890/Mail-for-Good,karuppiah7890/Mail-for-Good,zhakkarn/Mail-for-Good,zhakkarn/Mail-for-Good,zhakkarn/Mail-for-Good,karuppiah7890/Mail-for-Good