ENH: Parameter serializer.

A set of classes are added to serialize and deserialize parameters of
an itk::LightObject.  The base class, ParameterSerializer, is defined.
Serializer classes corresponding to other itk::LightObject's derive from
this class and define the parameters of the class and their default values.

Values are stores in a set of lightweight classes with well defined types.
These values are stored and retrieved with an Archiver class.  A JsonCppArchiver
was implemented to store and retrieve object parameters from a JSON file.

The common classes are stored in a separate TubeTK repository and built with
ExternalProject so that shared code can also be used with SlicerExecutionModel
without duplication.

A test case is created with the AcousticImpulseResponseImageFilterSerializer,
which is a case that included a parameter that is a virtual Object (the
gradient magnitude filter).  This tests the recursive serialization of Object
member parameters.

Change-Id: Ib8c36fc0c7298bba43603115e2f1d832e045d629
ENH: SlicerExecutionModel Module Serializer.

SlicerExecutionModel CLI's parameter can be serialized and deserialized to/from
a JSON file.  GenerateCLP is extended with a GenerateCLPSerializer program that
will store all the parameters and their descriptions to a JSON file specified
with the --parametersarchive flag or it can load all the parameter values with
the file specified with the --parameterstorestore flag.

Flags specified on the command line will override values restored from the JSON archive.

A custom version of SlicerExecutionModel that provides this functionality is
used in the standalone Superbuild.

Change-Id: I97695324bd1cd2bd297a7a3dc442fe84312ac7f1
ENH: Add testing for deserialization to the CropImage app.

The test also demonstrates over-riding JSON file settings with the command line arguments.

Change-Id: I046a3b29094a51c804529849940eed54ae4f2294
Merge topic 'ParameterSerializer12'

f5d68c7 ENH: Add testing for deserialization to the CropImage app.
0eddd58 ENH: SlicerExecutionModel Module Serializer.
a5fad30 ENH: Parameter serializer.