ENH: Creating templateless region splitter classes

The end goal of this topic is to consolidate code, enabling re-use,
and modularization to facilitate customization and experimentation
with different splitting algorithms for multi-threading, streaming and
IO.

Creating a new virtual ImageRegionSplitterBase class which does not
have a class template. This enables the same splitter to be used for
the multi-threading, the streaming image filter, and the IO
classes. Additionally, it allows for a global default splitter to use
used and shared.

The current default algorithm of splitting along the slowest dimension
is not implemented in the ImageRegionSplittingSlowDimension class.

There are some novel to ITK design patterns used here which should be
considered.

1) Using a templatedless class with templated function which
dispatches to a function which takes the dimension and arrays. This
allow for compiled functions to be reused.

2) Multiple inheritance is used, to add common static members which
access common data between all implemented instances of the class. That
is it can provide common data and methods for all instantiations
across template instantiations.

Add GetModified IVAR accessors to ImageRegion class.

Change-Id: Ia73a69a32cf5f543540809a466223f9456a9af06
ENH: Adding image region splitter for separable filtering

The recursive separable image filter splits along the dimension which
is the fastest non-active direction. This has been extracted into a
ImageRegionsSplitter class.

Adding wrapping support for new splitters.

Change-Id: Ice0fb13ac5641c0e85b74f4ce70aa83a84d71052
DOC: Fix misspelling in ObjectMorphologyImageFilter

Change-Id: Idc4220aa6b2ddfab6604d3f0842589ab441bdded
STYLE: Remove unnecessary function call in GDCMImageIO

Change-Id: I3f88df3caf545a6b0b2d73f100a16a75fa1ad100
STYLE: Remove calls to deprecated functionality from DICOM Examples / Tests

Change-Id: Id5fd2393bfaf5eedb95975d8df11e2324d5d1513
Merge topic 'morphology-doc-spell'

f08bc05 DOC: Fix misspelling in ObjectMorphologyImageFilter
Merge topic 'gdcm-cleanup-reader'

cb76cbc STYLE: Remove unnecessary function call in GDCMImageIO
Merge topic 'gdcm-cleanup-examples'

f04a362 STYLE: Remove calls to deprecated functionality from DICOM Examples / Tests
Merge topic 'ConsolidateImageRegionSplitting'

2496fca ENH: Adding image region splitter for separable filtering
4c47e7d ENH: Creating templateless region splitter classes