Adding initial Euler3DTransform class

This derive class does not add any itk data holders, it just provides
additional methods to interface with the ITK class. It provides
specific names function to provide access to the fixed parameters and
the optimizable parameters.

Change-Id: Id98c5aeae6b80d25de025ca0851fd04a6cd7e27d
Adding Euler3DTransform to header and wrapping

Change-Id: I4d3ae41e0206a559c9c9cb3ee7e248a943426ad3
BUG: Add check for correct size of parameters to transforms

ITK does not always check the size for the fixed parameters and the
parameters passed. This can place the class into an undefined state.

The SimpleITK wrapper not checks that the size is atleast the size
expected of ITK, and performs a shallow copy into an ITK array object
so the size then correctly matches the requirements.

Change-Id: I83b55c54bb54067e6b27f5e0844f8211ba7ccfd0
Add virtual method to set pimple transform

This new method is called outside of the constructors to set the
internal pimple pointer. This allows for derived classes to update
their state when the internal type of object changes.

Change-Id: I1c57ba470a93411ef70b5fa359078a2cd7800e4a
Core improvements to Euler3DTransform

Added Translation parameter
Change from Offset to Center fixed parameter due to Offset's
interaction with Translation.
Overloaded SetPimpleTransform method to update std::function methods
when base class changes.
Added MakeUniqueForWrite call be from modifier methods are called.

Change-Id: I5704b192c48998b1a096dbf84a7e02969c5f7975
Adding comprehensive test of the Euler3DTransform.

Change-Id: If3ac52ebc07ff52cc2b9fd1d98c813cf9492c7c3
Fix some style issues with EulerTransform interface

Change-Id: Ief8f49374b38b43bf84cdd140f9aad412e7c7ab2
Adding specific translation transform interface

Change-Id: I118cdcdfba9cde7721f8ecf08bacb5ed1da69126
Adding specific interface for the affine transform

Change-Id: I63096d6937aeba3fdcb81b1111ce05495c463887
Adding specific interface for Euler2D transform

Change-Id: I8628fa29de1dd8d854491f23fed387bff065e504
Adding specific versor transform interface

Change-Id: I70dccd2cd3b3b732c92667ed1a84f054989e5ec7
Adding transform interfaces for 2d and 3d similarity transforms

Change-Id: I38c6a51a7dbfd6496d28a3081b5b4fb2a784f587
Fix unused variable warning

Change-Id: I7782d79a9315fe028a6aac5002ccaf319911c4d9
Set Scale function pointer to null

Change-Id: Ieaf89913dc2e775ba39152e6013cb0751ad8cffe
Use setter methods for Euler3D constructor with values

Change-Id: I4959787760e6fbbd6f39318eb4d58fa401b7a9a7
Adding skeleton test place holders for transforms

Change-Id: Id76ca22d6984bbef6cddb63f33ba1d9465fdfd1f
Using const vector & for function object parameters

Change-Id: I54e9ff506bed9e7547fac00d3793183350e0f866
Fix wrong function called for GetCenter

Change-Id: Ib15a94ff0d5e9cce11ff3a99c248aebb6c04f8f5
COMP: VS11+ requires C++11 nullptr for assignment to std::function

Change-Id: Ia009155a824ede49451ef17461b429540debab48
Detect C++11 nullptr keyword define SITK_NULLPTR as it or NULL

There is a compatibility issue with std::tr1::function and c++11
std::function. The former accepts the C NULL defined, while the later
does not and requires the new nullptr of nullptr_t type. So the
SITK_NULLPTR is introduced to take are of this issue.

Change-Id: I71f33a5dcfd1372fee55ffa9f8a4a4ca02c3f8a1