Arbitrary resource types - base implementation

Replace hardcoded instantiation of JarResource in RepoIndex by a
loop that consults all available recognizers, similar to how the
analyzers are consulted.

Added default implementation for a Recognizer, that recognizes
bundles, jars and (some) base IANA media types, and an Analayzer
that tries to determine generic identity capabilities based on
filename for non jars (as a fallback).

Modified registration of existing (bundle) analyzers to not
consider mimetypes they can not handle.
Arbitrary resource types - Metatype Recognizer & tests

Added a recognizer for metatype files and some basic tests in line
with the existing ones.