added ability to accept CSV files with added/removed/rearranged columns and fixed some bugs