Split datastore.load

Into loadData and getMetadata. We need to be able
to get them separately because loading the data is
expensive and you might not always need to load it.