CDK-484: Clean up Registration and Datasets.

This cleans up the separation between the Registration and Datasets
classes. Registration handles URI matching and returns DatasetRepository
objects. Datasets handles any other operations that use those
repositories and the data. Load and view are now one method that returns
the appropriate object based on the URI.

This also expands Datasets, adding create, update, and delete methods
that call the appropriate method on the repository responsible for a
given URI. This is to enable the CLI to use Dataset URIs, solving the
problem of how to use more than one repository for CLI operations.