Matlab object loading functions (see #10383) (rebased onto develop)



This is the same as gh-817 but rebased onto develop.

----

This PR adds a couple of utility functions to OMERO.matlab to load objects (`getProjects`, `getDatasets`,...)

No integration tests have been added so far as no adequate infrastructure exists in Matlab. Should we wait until we have 1- a concrete plan to reuse OmeroJava test libraries and 2- new `deleteExperimeter()` and `deleteGroup()` functions?
/cc @bpindelski

Two implementation questions:
- we talked about having a `getPlateAcquisitions()` function. Should the input id be the id of the plate acquisitions or of the plates? /cc @jburel
- when specifying object identifiers and no object is found, what should be the nature of the returned output? There are 2 basic solutions to this problem:

```
>> emptyimages1
 
emptyimages1 =
 
omero.model.ImageI[]:
    []
 
>> emptyimages2

emptyimages2 =

     []
```

Currently this PR implements the second solution, i.e. a Matlab code could invoke the following:
```
images = getImages(session, -1);
if isempty(images)...
```
Does this make sense or do we want to create an empty array of `omero.model.ObjectI` instead?

/cc @imunro @yalexand