COMP: use find_package(VTK COMPONENTS) to specify just needed VTK Components

Change-Id: If139b873783f0b1863bebd8a591872193c184372
COMP: use find_package(VTK COMPONENTS) for LevelSetsv4Visualization

Change-Id: I04445e3b55d0834039ba59ca2fb4e51e33989699
ENH: Specify required VTK modules

Specify the proper modules for VtkGlue and the WikiExamples Remote
module.

This also serves as an example of how to find vtk modules in remote
itk modules.

Change-Id: I9d9bf29d36c2b15ee8a814854c9b01e74a20d004
COMP: Wiki examples require additional vtk modules

The Wiki examples require a VtkGlue that contains vtkTestingRendering
and vtkInterationImage but VtkGlue does not require these vtk modules.
If the Remote module WikiExamples is enabled, require the additional
modules for vtk.

NOTE: In the future we need a better way to handle itk modules that
require vtk modules.

Change-Id: I5d2c916a1c6cce95bc2971e6b9b192b04dffa27c

Conflicts:
	Modules/Bridge/VtkGlue/CMakeLists.txt
ENH: Modify WikiExamples remote config

Recent changes to VtkGlue only load selected VTK
components. WikiExamples need more VTK components. The WikiExamples
remote repo was modified to configure with addtional modules.

Change-Id: Ifc39a866a082f80ed0ec8efa7755ee804436713b
COMP: Remove unused typedef's in VtkGlue.

Change-Id: Ic7e9a3a24a49a13a04932d6c806482a0516fae88
COMP: Add VTK Python module when wrapping ITKVtkGlue.

Required for missing vtkPythonUtil.h header.

Change-Id: Ida06b0d4adfa491bf78f4f5508b84a9709e45fb2
COMP: Remove unused typedefs in LevelSetsv4Visualization.

Change-Id: Id7837dfbc159febef5b85d359f4a5f90cda3c1c3
COMP: Add missing VTK module dependency for LevelSetsv4Visualization.

Change-Id: I60c84bc3ee3060111514f744da07cca7e43c285d
COMP: Avoid including VTK_USE_FILE within ITK

A convenient way to load VTK for usage in a project's CMakeLists.txt
file is

find_package(VTK)
include(${VTK_USE_FILE})

Doing this within ITK can cause mysterious linker and include path
problems for projects that use ITK and perform their own inclusion of
VTK_USE_FILE, a file that is meant to be included only once in a CMake
project.

This commit changes ITK's inclusion of VTK in the VtkGlue and
LevelSetsv4Visualization modules to not include VTK_USE_FILE.
Instead, it uses the vtk_module_config() mechanism to load the
necessary VTK modules and sets up only the necessary libraries,
include paths, and compiler definitions needed for each ITK module.

This change should make it possible for projects that use ITK with
VtkGlue and/or LevelSetsv4Visualization enabled with the simplified
idiom

find_package(VTK)
include(${VTK_USE_FILE})

as long as ITK is found prior to VTK, i.e.,

find_package(ITK)
find_package(VTK)

Change-Id: Ic54e09890617bf8b81f0aba672b573a5bdf5e7bf
BUG: Configure against VTK 5.

VTK 5 is not modular.

Change-Id: I7f5672d68ea0234aa17e27ccbdd11aa3f6433285
STYLE: Remove old cmake < 2.8.4 specific code

We are requiring at least cmake 2.8.6

Change-Id: Ia34c77bdfa866c4eba58f1b3f28d454e095a8851
BUG: Reset ITK_MODULES_REQUESTED to all modules with multiple calls.

This generates more expected behaviour when

  find_package(ITK COMPONENTS X Y Z)

followed by

  find_package(ITK)

is called.  When no components are specified in subsequent calls, reset
ITK_MODULES_REQUESTED to all modules enabled.

Co-authored-by: Jean-Christophe Fillion-Robin <jchris.fillionr@kitware.com>

Change-Id: I847f1ed2a8912fb5f9b70d1e2ff3a81794350d14