Implement low-level read access of the FSTD records.
Implement low-level output of FSTD records.
Move the low-level read/write interface into the FSTD_File object.
Add methods to encode/decode CMC timestamps.
Vectorize the date conversion.
Implement vertical level encoding/decoding.
Move the low-level file details to the extension module.

This includes the file object (and auto closing), and the data access functions.

Now, the only routines needed for reading/writing raw records are read_records() and write_records().