ENH: Add capabilities to write out csv log file in a report

It is nice to be able to write out the metric value in a CSV file for
knowing the quality of registration results for various metrics.

This feature fits nicely with BRAINSFit tools.

The new command line option is
--logFileReport

A file to write out final information report in CSV file:
FixedImageName,FixedMaskName,MovingImageName,MovingMaskName,MetricName,MetricValue
ENH: Add "logFileReport" to BRAINSFit

A file to write out final information report in CSV file:
MetricName,MetricValue,FixedImageName,FixedMaskName,MovingImageName,MovingMaskName
BUG: Python pathing was incorrect.
BUG: fix crash in BRAINSABC
ENH: Added the UnbiasedNonLocalMeans filter to BRAINSTools.
ENH: Added the SlicerJointRicianAnisotropicLMMSEFilter.
ENH: Using python multiprocess.Pool() for multiple subjects

By using the python multiprocess.Pool() we can more easily dispatch
many subjects workflows in parallel very easily.
BUG: Fixed Second stage BRAINSABC custom xml generation.
WIP: input/output precision type is added to BRAINSTransformConvert

Two new flags are added to BRAINSTransformConvert tool:
--inputPrecisionType
--outputPrecisionType

These flags can be set as float or double, and they can work well with
other options like outputTransformType.

This patch is tested and works properly now. However, it is not
finalized yet. First, ITK transform file reader/ writer should be fixed
in a way that they can convert their input transforms to the requested
output precision type automatically. Then, this program can be simplified
a lot based on the new version of ITK.