I had assumed that $ccd_temps =
> Data::ParseTable::parse_table($ccd_temp_file); is returning a PDL object.
> Maybe that's not the case, though I can't definitively say from the
> Data::ParseTable docs.
>

I'm pretty sure that the current implementation is giving us a list of
hashes (as I didn't set 'return_as_pdl')



> BTW, starcheck *does* have a PDL::Lite dependency via Data::ParseTable.
>

A fair point.  Not sure if PDL::Lite is smart about autouse if we aren't
calling the routine that uses PDL... but whatever.

> There is the whole business of the precise value of tstop, which depends
> on whether a catalog followed by a maneuver. So I was just suggesting
> taking starcheck's knowledge of obsid => (tstart, tstop) [as it is defined
> here in set_ccd_temps] mapping and passing it on.
>

Whereas I was thinking about a pure obsid->temp mapping from aca_check and
then letting starcheck take the max value over two obsids if it is in one
of these no-maneuver cases.  But that does leave some code logic in
starcheck.  But maybe cleaner than reading the json from aca_check at this
point?  I'll experiment.