Variable headers on standard measurement csv files

Use the fields in column 0 as a way of generating keys so we can deal
with csv files in the canonical format having varying header sizes.

Uses the same invalid-date? parsing that aliased headers do, but uses
the values in column 0 to create device/sensor maps out of the rest of
the headers.