Merge branch 'wip/collisionMesh-stapler'
Visualize collision meshes as wireframes on the screen.
Update Constraint, add extra parameter verification

- Passed parameters should have valid Representations, and the
Representation type should match between the implementation and
localization.
- Update unit tests to catch invalid Representations.
- Update unit test to perform full combinatorial check against nullptr
arguments.
Transfer pose of physics representation to wireframe.
Use collision mesh for staple instead of capsule.
ConstraintComponent, initial commit
Add ConstraintComponents to PhysicsManager and PhysicsManagerState

- PhysicsManager parses list of components and stores
ConstraintComponents.
- Adds PhysicsManagerState::setConstraintComponents, which follows the
format of other mutator methods for PhysicsManager Components.  The
new method additionally adds the Constraints into the relevant
ConstraintGroupType.
- Added new ConstraintGroupType to enum, which will be processed during
the BuildMlcp step of the PhysicsManager.
- Added additional unit test to PhysicsManager to test the addition and
removal of ConstraintComponents.
Make Spring/MassSpringRep API similar to FemElement/FemRep API

Spring is not holding the force vector nor the stiffness/damping matrices anymore, it build them and add their respective contributions directly into a bigger system, like FemElement is doing.
This simplifies the code a little, especially when assembling the system, it is done more naturally on the MassSpringRepresentation layer, it standardize the API, avoid storing unnecessary data in Spring.
The MassSpringRep code is now very close to FemRep code, the addRayleighDampingForce method is now using the same construct as in FemRep, it takes 3 boolean to improve performances when the proper matrices (D or M,K) have been build.
+
rename variable with full name (rayleighMass and rayleighStiffness) in MassSpringRep
Reorganize ExampleMassSpring.cpp #include order alphabetically
FemRep use fully named variables: rayStiff->rayleighStiffness, etc…
Simplify addMatVec code with if-else statement
rename LinearSpring::addMatVec parameter 'x' to 'vector'
Add LinearSpring unit test for addMatVec method
ConstraintComponent, various changes

- Rename CONSTRAINT_GROUP_TYPE_FROM_CONSTRAINT_COMPONENT to
CONSTRAINT_GROUP_TYPE_SCENE.
- Update documentation
- Reduce number of nullptr tests, use EXPECT_THROW instead of
EXPECT_ANY_THROW.
setConstraintGroup, optimization

- Avoid allocating new memory for each call of setConstraintGroup by
acquiring a reference to the vector and calling reserve.
- Because we call reserve, we could possibly face memory leaks.
Therefore we also call shrink_to_fit.
Merge Mater into this branch.
Fix CppLint warnings
Merge branch 'feature/Spring-FemElementLike' into 'master'

Refactor Spring/MassSpringRep to have similar API as FemElement/Fem

+1: haizhouW, Harald Scheirich

Merged-on: https://www.assembla.com/code/OpenSurgSim/git/merge_requests/763903
Merge remote-tracking branch 'origin/master' into feature/CollisionMesh-Wireframe

Conflicts:
	Examples/ExampleStapling/main.cpp
Merge branch 'feature/CollisionMesh-Wireframe' into 'master'

Wireframes for collision meshes

Merged-on: https://www.assembla.com/code/OpenSurgSim/git/merge_requests/758183