OMEROFormat: reorder name to be after credentials

It is more intuitive, since you need the credentials in order to obtain
the name, just like all the other fields.
OMEROFormat.Metadata: enable Image+Pixels caching

After loading an Image or Pixels descriptor from a remote OMERO server,
it is very nice to have somewhere to cache it. The Metadata is the
natural place, since doing it in the OMEROSession would prevent the
session being used to populate multiple different Metadata objects.

However, we do not want the cached Image or Pixels to be persisted or
otherwise treated as 1st class metadata fields. So they are not
annotated with @Field. They are also nulled out when the metadata's
respective imageID or pixelsID is updated.

If consuming code needs to be certain it will receive a non-null Image
and/or Pixels, it should use the OMEROSession's respective loadImage
and/or loadPixels methods, which load those objects on demand.
OMEROSession: tweak style
OMEROSession: improve javadoc
OMEROSession: make createPixels cache the new IDs

When calling createPixels, a new image ID and new pixels ID get
registered. These IDs need to be recorded into the Metadata object
for consistency, in case they are needed later.
OMEROSession: add loadImage method

This method loads an Image from the remote OMERO server, caching it
within the metadata as appropriate.
OMEROSession: rename getPixelsID to loadPixelsID

The method is now public, and leans on the new loadImage method as
appropriate.
OMEROSession: rename getPixelsInfo to loadPixels

The method now uses the metadata Pixels cache as appropriate.
OMEROSession: add loadImageName convenience method

This just loads the Image, then retrieves the name from it.