DataSourceConfiguration can now return a specific type of DataSource

Allows getMetadataDataStoreParser implementations to return any type of DataStoreParser, without having to do odd casts.