Do not cast image to float in CreateTetrahedralMesh

This will lower the memory consumption as there is no more need for the
program to create float-copy images of the input images.

Consequently, the LabelMapField class was templated. This led to removing
a lot of the cmake logic as the templated class cannot be compiled into
a library. Also renaming the LabelMapField.cxx in a .txx file.

In CreateTetrahedralMesh, the cast filter was removed as it's no longer
needed. Note that in the DoIt function, the case where the input image
is of an unsigned type are run with their counterpart signed type. This is
because we need -1 for the outside material.
Merge branch 'RemoveCastingInTetMesh' into next

* RemoveCastingInTetMesh:
  Do not cast image to float in CreateTetrahedralMesh