Implement APIs and process for managing site data

See #3, #4 
With the two try blocks coalesced into one,  `table` will not be defined if the exception is thrown by the read of the metadata or the open of a datafile.  I know the metadata have previously been read, and the data files have previously been validated, so most likely this would never happen, but ....