Added ability to override or add headers to CSV provider

Can now override the headers provided in a CSV file or add them if they don't exist. Also added the ability to change the amount of rows are skipped. This is required because 1 row was always skipped which caused some problems for header less CSV's.