Adopt VTK 5 directory style.

Also tweaking the CMakeLists:
- Adding header file.
- Delete Tab
- Comply with the defined style

Issue#13634
Clean-up API for the Bone's name

Deleting Set/GetBoneName functions in Armature and adding comments in
vtkBoneWidget

Issue#13615
Harmonize naming in vtkBoneWidget.

Changing AxesVisibility to ShowAxes to be on par with the ShowParenthood
methods.
Propagating the change to vtkArmatureWidget as well.

Issue#13621
Add utitilty function GetLength()

This will help to return the distance between the head and the tail.
Creating its counterpart in vtkBoneRepresentation.
Change AddPointAction name to SelectPointAction

Consequently changing the signal it's responding to Select
(instead of AddPoint).
Adding the Start/End InteractionEvent when the line is moved.

Issue #13610
Add Bone Name property.

The widget name is synchronized with the node's name for a simplicity.
This also provides us with a nice unique name for the bone automatically.

NOTE: this commit might introduce redudancy with the calls to Modified().

Issue #0013642
Add and delete the bone observers properly

Before the bones the armature was listening to were the bones it created.
However, the armature should really be listening to the bone added to it.
(No matter where they come from).

Also, adding the RemoveBoneObservers method. Before that, all the observers
where removed which is not ideal is the bone is used elsewhere. Now only
the armature observersof the bone are removed.

Finally, making the UpdateBoneWithArmatureOption available in the API.
This will help to put the bone on par with the armature options.

Issue #13641
Add the missing Modified() throughout the vtkArmatureWidget

Without them, the widget will never notify that it was modified.

Issue #13640
Merge branch 'vtkBoneWidgets' into Armatures

Conflicts:
	Libs/VTK/CMakeLists.txt
	Libs/VTK/Widgets/CMakeLists.txt
Fix compilation errors introduced by the new vtkBoneWidget branch
Add bone widget correctly to the armature.

The bone widget are now added with the event OnMRMLSceneNodeAdded().
Updating the GUI to work with the new modifications.

Issue #13633
Using enums instead of number

See Issue #13636
Factorize setCoordinatesFromBoneNode().

Adding get methods in vtkMRMLBoneNode.

See Issue #13636
Rename function onMRML...Modifid to updateWidgetFrom...Node()

See Issue #13636
Factorize calls to Update...()


See Issue #13636
Fix GetLength.

The distance in the representation is only recomputed when the
 representation is updated. This means that if the bone's representation
exist but isn't displayed (and thus recomputed), the distance will never
be updated. That's why we simply recompute it all the time.

Issue #13621
Merge branch 'vtkBoneWidgets' into Armatures
Use vtkMRMLBoneNode GetLength instead of recomputed it ourselves.

In the meantime, changing the name from distance to length which
 makes more sense.

See Issue #13636
Update vtkBoneWidget only when necessary

Previously, there was still some set...() methods that did not check
 (or improperly) if the new values changed, causing unecessary
computations and ModifiedEvent() to be fired.

Issue #13656
Use proper RemoveObservers() function

The old function isn't precise enough and would remove the first object
 that observes the bone, which isn't necessarly the armature.

Issue #13641