lots of refactoring, made an IndexedDatasetStore abstract class to anchor implementations. Implemented the TextDelimitedStore minimally, made imporvements and some validations to the CLI