updated CSV parser to handle unicode