AVI: prevent reading beyond the end of the file

Fixes #10720.
Allow use of ImageJ 1.47q and later

See #10837.  Only 1.47o and 1.47p are excluded now.
Leica LIF: fix channel metadata for tile scans

Fixes #10952.
mdb: fix page swapping bug when reading column text values

The page buffers are swapped at the beginning of the read, and are
expected to be swapped back at the end of the read.  This was happening
if the read was successful and the value was valid, but not if the value
was invalid.

Fixes #10942.
mdb: only swap the buffers back if the memo length is zero

See c68c915d2430c80080907f46a90d5ea203cfd117.  Swapping on a memo with
length greater than 0 has the potential to introduce an infinite loop.
CellR: fix subtle issues in close() and openBytes

close() now clears all variables, and openBytes now does proper
parameter checking.  The former may help with the problem of incorrect
pixel data when importing certain CellR datasets into OMERO (see PR 529).
CellR: prevent invalid files from being added to the used files list
CellR: trim the image names before sending them to MetadataStore
mdb: one more fix for page swapping

See 839516c and c68c915.
Zeiss CZI: initial support for multi-file datasets

See ticket #10966.
Zeiss CZI: recognize the angle dimension

Necessary for proper SPIM support; see ticket #10620.
Zeiss CZI: fix binning parsing

See ticket #10620.
Zeiss CZI: parse directory segments

See ticket #10620.
Zeiss CZI: do not attempt to populate enum types with null
Zeiss CZI: improved channel metadata parsing

See ticket #10620.
Fix used file test for multi-file Zeiss CZI datasets
Zeiss CZI: add null checks for various metadata fields
CZI: improve channel metadata population

See ticket #10620.
Zeiss CZI: a few more metadata parsing fixes

See ticket #10620.
CZI: fix a few potential metadata parsing problems