PERF: 15% speed improvement for registration

The speed improvement is mainly gained by avoiding smartpointer de-reference in a loop.
        After   Before
        18.72   23.63
        18.95   18.9
        19.75   23.65
        18.66   19.13
        17.49   24.93
Average 18.71   22.04  15% speed improvement
Stddev  0.810    2.81

Using small regression test from ANTs package as reference.

This patch also prefers initialization of accumulators
prior to loop running and to simplify conditionals
on the loops.

Change-Id: Ie4c5dbbfb8c2cf2835454661ccf41d4950f9c80a
PERF: Simplify conditionals in loop

This is to simplifying by removing unnecessary conditionals
to provides additional optimization opportunties.  The conditionals do not
change the values, but they do attempt to reduce the amount of computation
that needs to be done.  In reducing the amount of computation, it also
increases the complexity of the code and introduces alternate code paths
that make optimization more difficult.

        187.2   175.58
        189.42  177.67
        188.91  178.78
        190.58  183.05
        191.37  191.53
Average 189.496 181.322 4.508%
Stddev    1.605   6.323

Change-Id: I92e98ba8b44b8891c1f3277565d6d51e3b7806a3
ENH: Disable tip to enable Uncrustify from SetupForDevelopment

Uncrustify use in ITK is not yet mature, and enabling its hooks will
cause developers to get pre-commit errors from any preexisting issues
in a file. This can be very confusing to new developers who may not
realize that they are not responsible for fixing these issues or
who may not understand how to disable Uncrustify pre-commit checking
again.

Enabling Uncrustify pre-commit hooks should not be suggested as a "tip"
to all users during the standard SetupForDevelopment process. ITK
developers who want Uncrustify support can still enable it manually.

When Uncrustify support is more mature, the tip can be re-enabled.

Thanks to Julien Michel for helping to track down this issue.

Change-Id: I2168d99eadc7ece4f94e7b9099ff12dd7073cccd
STYLE: Rename TValueType template parameters to TValue

This is consistent with template naming conventions.

Change-Id: Ifed106f661a2120a4a579b5620beb2ecc770e5a4
ENH: Bump CMakeLists.txt to version 4.6.0.

Change-Id: I0734aa7dcd2ecc443f4d1b015b21760903b29955
Merge topic 'Disable-Uncrustify-Tip'

ad31003 ENH: Disable tip to enable Uncrustify from SetupForDevelopment
Merge topic 'PerfImprovement'

ee79cc0 PERF: Simplify conditionals in loop
d01a48f PERF: 15% speed improvement for registration
Merge topic 'Rename-TValueType'

26354b3 STYLE: Rename TValueType template parameters to TValue