from code review.  consolidate CSV and Tab generators into one