Require explicit directory for Memoization
Merge pull request #427 from rleigh-dundee/xsdfu-gensrc

xsd-fu: Generate sources at build time
scifio: Add BaseMetadata

BaseMetadata is a base interface for MetadataStore and
MetadataRetrieve, giving the following hierarchy:

        BaseMetadata
           /    \
MetadataStore  MetadataRetrieve
           \    /
         IMetadata

The intention here is to have base type which can be used to
specialise containers for that type, which can contain instances
of both MetadataStore and MetadataRetrieve, principally
AggregateMeta.
merge develop -D org -I include -E exclude: PR 351 (Add SPW support to FakeReader)
merge develop -D org -I include -E exclude: PR 433 (More .nd2 fixes (rebased onto develop))
merge develop -D org -I include -E exclude: PR 465 (Kryo memoizer)
merge develop -D org -I include -E exclude: PR 467 (Revert "Adding Transform to Image, see #3742")
merge develop -D org -I include -E exclude: PR 468 (scifio: Add BaseMetadata)