Determine enabled modules dynamically.

VTKConfig.cmake used to explicitly include a list of modules that are enabled
with VTK is built. This had two problems:

1. Package-maintainers could not provide separate packages for VTK modules and
since each package would need to provide a different VTKConfig.cmake file.

2. Projects such as ParaView, that need to add a module explicitly at the end of
the modules processing loop could never have those "final" modules be detected
correctly in dependent projects since the VTKCOnfig.cmake file wasn't aware of
those extra modules.

We fix both these issues by dynamically determining the list of enabled modules.
We simply scan the VTK_MODULES_DIR to determine the modules that are available.
To simply developer builds, we clean the VTK_MODULES_DIR at configure time to
remove any *.cmake files to avoid leaving stray config files for modules that
the developer disabled. Note there are other generated files namely,
WrappingHierarchy related files that are placed here which we do not (and should
not) touch.

Change-Id: If87429a30ac26d3c2d7744d32e0a6503c123c1b3
Merge topic 'catalyst_2.0' into master

1dca284c Determine enabled modules dynamically.