add test to make sure get_sites isn't being cached between calls
use a unique h5 file for each test
it's generally cleaner and avoids really hard-to-debug situations where tests
can be entangled via pytables' open file cache
return early if no data is received for update_site_list
return an empty dict for hdf5.get_site() if nothing is available
use pandas.io.pytables.get_store() context_manager to ensure stores are closed after use