make common things static
use bufferedinputstream
static method for init
use bufferedoutstream
buffered was doubled
boms are filtered out before reading CSV