ENH: Only build tests for modules explicitly enabled.

If BUILD_DEFAULT_MODULES is OFF only the tests for the Modules explicitly
enabled are build to reduce build time.

Tests for modules requested by the ITKGroup_ variable are not enabled because
even for the Core Group, the test dependencies greatly increase the size of
the dependency tree.

For similar reasons, by default tests for only modules that are explicitly
enabled are built.  An option ITK_BUILD_ALL_MODULES_FOR_TESTS is added that,
when turned on, will also build all the tests of dependencies.

Change-Id: If02bde13f7e3cc47604a63ae7eec7bcfed071e5a
COMP: Except Git's status messages from CTest reporting

Git prints some of its normal status messages to stderr. This output can
be mistaken for warnings by CTest, particularly if the target Git
repository uses the word "warning" (for instance in a branch name).

This modifies the regex CTEST_CUSTOM_WARNING_EXCEPTION to also catch
and except the messages printed to stderr by "git clone" and
"git checkout" (to a detached HEAD), which occur when using Git to
fetch an ExternalModule.

A patch is also being submitted upstream to CMake to fix the same issue.

Change-Id: I7208bd811dd3a6c4f06a10ced5ef2caecaa30452
COMP: Remove explicit typed exception specifications

Calling std::terminate when a nested unspecified exception occurs is
unexpected behavior.

Exception specification has been deprecated and will be removed from
c++11.

Change-Id: Iaece4ae186927fd67736148327a78669dc85286c
Merge topic 'DetachedHEAD-Warning2'

71d18597 COMP: Except Git's status messages from CTest reporting
BUG: Fixed Affine test 32bits. Precision checks.

The testValue, testVector and testMatrix routines are now modified
to take advantage for the method:

         itk::Math::FloatAlmostEqual( v1, v2, maxUlps )

The parameter maxUlps has been adjusted to the level of precision required for
every intermediate test, and to the lower bound that still lets the tests pass
on both 64bits and 32bits. The default value of maxUlps has been set to 4, to
make it consistent with the FloatAlmostEqual() implementation default value.

This has only been tested on Linux 64/32. Additional fine tunning might be needed
for other platforms.

Change-Id: Ie4adfa0ae1d5eae3bcdf75d0e41f0196f6898cfa
ENH: Print Object name for observers of objects

Giving each command a name can aid in debugging.

Change-Id: If564061e847e5f490e49e7c6638258af3ddae450
BUG: Remove unused forward declarations in RegistrationMethodsv4.

Change-Id: Ia909152c893f489672cfb689c577139fa21ff148
ENH: Adding progress reporting to some filters

Detected utilizing SimpleITK filter testing framework, these are just
some of the filters that were not reporting progress.

Change-Id: Ieda94a9f5ad951f1e823989daf962e28c487a6cc
Merge topic 'FixAffineTransform32bitsVs64bits2'

504ea57e BUG: Fixed Affine test 32bits. Precision checks.
Merge topic 'module-test2'

6f84dd4e ENH: Only build tests for modules explicitly enabled.
Merge topic 'reg-clean'

bc3c120d BUG: Remove unused forward declarations in RegistrationMethodsv4.
Merge topic 'PrintCommandObjectName'

a77f16fb ENH: Print Object name for observers of objects
Merge topic 'AddProgress'

3fbc01a6 ENH: Adding progress reporting to some filters
COMP: Update libminc to latest version.

Fixes build errors on Visual Studio 2008.

Conflicts:
	Modules/ThirdParty/MINC/CMakeLists.txt

Change-Id: I2a084c6c7565e01ca7c7919e02cf59f72be8e784
Merge topic 'RemoveExceptionSpecification'

1b825a85 COMP: Remove explicit typed exception specifications
Merge branch 'release'

Change-Id: I3672be9f5c984e2fce1cfce1e16e7d153147e055