CDK-385: Move URI registration to SPI, add return generics.
CDK-385: Add FS dataset URI tests and bug fixes.

Because query args are now supported in opaque URIs, matching the
repo:*storage-uri pattern was removing query args as part of that match.
It isn't really necessary to use URIPattern to match just the scheme, so
this commit matches the scheme and passes the raw scheme-specific part
to Registration as the dataset or repo URI.

Changes to path handling broke the Hive URI tests because "" can be
passed as a path. This also exposed that file: and hdfs: URIs were
incorrectly substituting the current directory for "/" paths, which are
passed as path "".
CDK-385: Add Hive dataset URIs.

This moves the DatasetBuilder from the FS Loader into Registration so it
can be reused to wrap any repository builder. This also consolidates
registerRepoURI and registerDatasetURI into one register method that
uses the generic dataset builder. The generic builder will first get a
repository from the parsed URI options, then load a Dataset.
CDK-385: Add HBase dataset URIs.