futher changes to ensure that there is some non-abitrary determination of which line is the header line and which column is the time and metadata column.
lots of changes to code structure.
added new find header, units, etc.
migrated most lists into dict