First set of build system patches for Qt5 support.

These changes enable support for Qt5 in CTK libraries and CTK Qt plugins.
Set the CTK_USE_QT5 CMake variable to ON on specify the Qt5 installaltion
directory in QT5_INSTALL_PREFIX.
This commit enables Qt5 support for the CTK Core library, issue #277.

There is still a Qt5Widgets dependency, see issue #278. The tests
pass (on my Ubuntu 12.04 development machine) with both Qt4 and Qt5.
Add support for Qt5

Todo:
* Test with Qt4
* Make sure ctkMacroWrapPythonQt.cmake works correctly
Ensure edit line in ctkConsole is always visible

Even when the line is 2 line long.
Also, on Mac, typing Control (not Command) was resetting the cursor
to be at the end of the document.

Closes #295
Add open file dialog and print help message actions

Closes #315
Allow reload in case of external changes

Add ctkSettingsDialog::reloadSettings() method to allow reloading
settings in case of external changes. Rename / make public the
ctkSettingsPanel::updateProperties() method (to reloadSettings() also)
in order to implement this.

This provides a way to make the settings dialog / panels aware of
changes made to the relevant QSettings outside of the dialog, which is
both an obvious bug in its own right, but more importantly prevents the
dialog from overwriting such external changes (see commontk/CTK#450).
Improve ctkSettingsDialogTest1

Add tests for restoreDefaultSettings() method and new reloadSettings()
method.
Merge branch 'master' into qt5

Conflicts:
	CMake/ctkMacroGenerateMocs.cmake
	CMake/ctkMacroSetupQt.cmake
	Libs/Core/Testing/Cpp/CMakeLists.txt
	SuperBuild.cmake
Merge remote-tracking branch 'j2/add-qt5-support' into qt5

Conflicts:
	CMake/CTKConfig.cmake.in
	CMake/ctkMacroBuildLib.cmake
	CMake/ctkMacroBuildPlugin.cmake
	CMake/ctkMacroBuildQtPlugin.cmake
	CMake/ctkMacroGenerateMocs.cmake
	CMake/ctkMacroSetupQt.cmake
	CMake/ctkMacroWrapPythonQt.cmake
	CMake/ctkScriptWrapPythonQt_Light.cmake
	CMakeExternals/PythonQt.cmake
	CMakeExternals/VTK.cmake
	Libs/Core/Testing/Cpp/CMakeLists.txt
	Libs/Core/Testing/Cpp/ctkAbstractLibraryFactoryTest1.cpp
	Libs/Core/ctkAbstractLibraryFactory.h
	Libs/Core/ctkAbstractLibraryFactory.tpp
	Libs/Core/ctkCheckableModelHelper.cpp
	Libs/Core/ctkErrorLogQtMessageHandler.cpp
	Libs/Core/ctkErrorLogQtMessageHandler.h
	Libs/Testing/ctkTest.h
	Libs/Widgets/Testing/Cpp/CMakeLists.txt
	Libs/Widgets/ctkCoordinatesWidget.h
	Libs/Widgets/ctkMaterialPropertyPreviewLabel.cpp
	Libs/Widgets/ctkPopupWidget.cpp
	SuperBuild.cmake
Use Qt5 CMake 2.8.12 features.

Also move Widget dependent classes from Core to Widgets. Closes #278.
Fixed a bug in repair message box
Merge pull request #464 from mehrtash/fix-dicom-database-repair-message-box

Fixed a bug in repair message box
Fix typo introduced by commit 8d376ed

Co-authored-by: Steve Pieper <pieper@bwh.harvard.edu>
Merge pull request #465 from jcfr/simplify-build-system-and-remove-base-include-dirs

Fix typo introduced by commit 8d376ed
Fix compilation of tests against VTK6

This commit allows CTK to be compiler against VTK6 with testing enabled.
That said, there are some tests failing to pass. Issues #467, #468, #469
and #471 track the failure most likely related to VTK6.
Virtualize ctkRangeWidget and ctkSliderWidget public API

Those widgets can be derived and it can be useful to add hooks to those
methods.
Merge branch 'virtualize-ctkxyzwidget-api'

* virtualize-ctkxyzwidget-api:
  Virtualize ctkRangeWidget and ctkSliderWidget public API
Qt5 compatibility for almost all libraries.

Not working yet:

 - XNAT libraries
 - VTK dependent libraries
 - Python Wrapping
Do not assume a specific Qt5 install structure.
Make more libs and apps compatible with Qt5.