Limit number of created ImportConfig instances

`ImportConfig` was logging the version number of
OMERO and Bio-Formats multiple times on startup.
This re-uses the config by storing it in each
`ImportContainer` and only creating one if required.
Cleanup imports on CommandLineImporter
Add `--debug=ERROR` example
Fix `--a=b` parsing in import.py (Fix gh-2477)

Parameters of the form `--debug=DEBUG` were
being passed to the Java process as `--debug`
`(space)` `DEBUG` which attempted to import
the file "DEBUG". Now, the flag is passed as:
`--debug=DEBUG`.
Allow to pass the client directory in bin/omero import

As it stands, the client_dir is constructed from the Context directory. This
commit allows to pass a custom client directory to the CLI import plugin.
Refactor test_import.py to use cli.invoke()

- Import and register the ImportControl class (requires __import__)
- Call cli.invoke() instead of using the library import_image
- Read the image/plate id directly from the stderr using capfd
Fix clientdir argument validator
Merge pull request #31 from sbesson/import-debug

Add client_dir argument and refactor test_import.py
Fix clientdir path conversion in import.py
Use long-args for passing to Java

Inserting a `=` between short args leads to odd
naming constructors like `=foo` for an image. By
using the long args, the logic on this branch
works fine.
Correct short-arg parsing

Other short args like `-l` don't have a long-form.
The "fix" in this branch to use `--name=value` is
invalid there. The use of a tuple in the map of
names defines which arguments will have this op
applied.
Use fixture rather than multiple parametrize for naming arguments

This commit reduces the overall number of tests by testing --plate_name and --plate_description arguments for plate imports only.
Re-add support for --debug=ALL
Pass non-null transfer for proper annotations

Petr pointed out that the merge build was missing
symlink decorations in the clients. On further
inspection, no annotations were being created since
a null was being wrongly passed to `fillData`.
Fix failing test_import.py naming integration tests

For some reason, depending on the method used to run the tests, the Object:id
line is not always at the same position in the stderr. This commit applies the
same strategy as the one used in test.integration.library.import_image() i.e.
loop over the stderr lines (in reverse order) and break when a match is found.
Add test for integration arguments in bin/omero import
Add integration test for --annotation_link argument of CLI import
Isolate get_object() and get_annotation_link() in test_import.py
Add integration tests for screen/dataset arguments
Fix integration test for screen argument of CLI import

For some reasons, the fake SPW creates a screen at import so we must retrieve
all screens linked to the plate and make sure the linked screen is among them