OMERO5.1DEV__12: modify experimenter and password.

This commit drops the "dn" column from the "password" table
and adds update scripts for adding an "ldap" column to "experimenter"
and setting it to the correct value based on "dn".
setDN() uses a boolean flag instead of string.

This changes the method declaration to accept a boolean instead
of the new DN string. The change happens on the "experimenter"
table ("ldap" column) and not on "password".
SqlAction.java: Remove unused actions, add new.

This removes actions that relied on the "dn" column of the
"password" table and also add surrogate actions that make use
of the new "ldap" column.
PasswordUtil.java: Use updated SQL action.

This simplifies the usage of PasswordUtil and the logic in AdminImpl
and ResetPasswordRequestI.
LdapImpl.java: Update method logic.

This is due to the updates to SQL actions and also the now
available new direct way of checking if a user came from an LDAP
server.
LdapImpl.java: Mimic SQL action return values.

This hard-codes the column names, as they are expected by
AdminI. It is not a portable solution and could be done better.
Deprecate bin/omero ldap discover.

Since the DN can't get out of sync anymore, this method isn't
required.
PasswordTest.java: Fix failing unit test.
Update UI to make use of new "ldap" field.

This also fixes the way how the "LDAP" label was rendered
in the user account properties.
Reduce Ice-generated C++ warnings

Rather than simply listing (and ignoring) all the warnings
that come with ZeroC-generated code we now suppress their
output at the cmake level.

In addition, using `cmake -Dfatal-warnings=true .`
will make all warnings an error which forces cleaning
up these issues.
Surround more Ice-generated includes
Also handle unused arguments
Also handle missing declarations
Also fix overloaded-virtual
Suggestions from Roger incl. strict push/pop

The `#error` on re-entrant warning protection
showed a number of places where the includes
needed to be adjusted.
Fix tests warnings
Fix casts in combined.vm
cmake: Add feature tests for warnings
Use vector.clear() rather than static_cast

Suggested by Roger that `static_cast<>(0)` for vectors
is confusing and possibly wrong.
Temporary modifications of fatal-warnings flag

In order to have fatal-warnings propagated to examples
and tests, it needs to come before the add_subdirectory
calls. Also, since we still have deprecated code, it's
necessary to ignore those globally in order to have the
build succeed.