Flex: fix field calculation when each field is in a separate file
Remove unnecessary call to OMEXMLMetadata.setRoot

This prevents the OMEXMLMetadata state from being overwritten when
calling addMetadataOnly on a store populated with instrument data.
Flex: tidy up Dichroic and Filter ref population
Reduce the amount of original metadata

With ~10,000 planes, 5 key/value pairs per plane creates an excessively
large original metadata table.  This reduces it to 3 pairs per field,
plus 2 pairs per plane in a single file.

Conflicts:

	components/formats-gpl/src/loci/formats/in/FlexReader.java
Eliminate redundant calls to setDichroicID and setFilterID
Flex: further reduce the number of redundant MetadataStore calls
Flex: only record plane factors if at least one is not 1.0

This greatly reduces the memo file size in most cases.
Flex: remove unnecessary logging
Fix length check for adding modulo annotations
Reduce the number of resolveReferences calls
Use a mixed List/Set class to store model object references
Reintroduce one resolveReferences call

Without this call, plate metadata will not be populated upon import into
OMERO.
Set channel names consistently for all wells
Fix field counting when the fields are stored within a single file
Only use ReferenceList for true references

In particular, it should not be used when attaching Images etc. to the
OME object.
Merge pull request #1477 from melissalinkert/flex

Flex: improved metadata handling