CDK-139: Separating common tests out of FS repo.

This extracts tests that should pass on all DatasetRepository
implementations into the TestDatasetRepositoryCommon set. The FS tests
now inherit from this add add other tests, like making sure that the
data directory exists after a dataset is created. Minor updates to the
FS repository are included where tests found bugs.

The common tests include checks that verify IllegalArgumentException is
thrown, which has been added to the API documentation in the interface.