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.
merge develop -Dorg -Ijburel/openmicroscopy:qa-submit-new -Ssuccess-only: PR 3037 (Group sudo)
merge develop -Dorg -Ijburel/openmicroscopy:qa-submit-new -Ssuccess-only: PR 3057 (Rating web)
merge develop -Dorg -Ijburel/openmicroscopy:qa-submit-new -Ssuccess-only: PR 3058 (Homebrew nginx (rebased onto develop))
merge develop -Dorg -Ijburel/openmicroscopy:qa-submit-new -Ssuccess-only: PR 3069 (Scalebar)
merge develop -Dorg -Ijburel/openmicroscopy:qa-submit-new -Ssuccess-only: PR 3098 (Metadata reimport)
merge develop -Dorg -Ijburel/openmicroscopy:qa-submit-new -Ssuccess-only: PR 3109 (Disable keyboard navigation (up, down, left, right) for jquery tabs)
merge develop -Dorg -Ijburel/openmicroscopy:qa-submit-new -Ssuccess-only: PR 3115 (CLI admin diagnostics: only check readability of var folder)
merge develop -Dorg -Ijburel/openmicroscopy:qa-submit-new -Ssuccess-only: PR 3117 (Bugfix: Paste pending rendering settings)
merge develop -Dorg -Ijburel/openmicroscopy:qa-submit-new -Ssuccess-only: PR 3122 (Customise Windows service name: omero.windows.servicename)