Add testing

Test for both a straigh line and a sinusoid.

This allowed to weed out some errors, particurarly:
 - Actually return whether the logic was successful or not

 - Make sure that SOAM computation is valid before computing the soam
result

 - Only compute the torsion angle if the vector it uses aren't null.
Otherwise normalizing them can possibly bring them back to life and create
aberrant results.

 - Improve Frenet frame computation when the acceleration is null. When
the acceleration is null, we previously did not check for inflection point
as we did not compute the Frenet's N vector. This could lead to inaccuracy
when the vessel is line-like around the inflection point as that inflection
would simply be skipped (acceleration is null following a perfectly sampled
line).
To remediate to this, we can compute the whole Frenet frame each iteration.
When the acceleration is null, we can rely on the other vector of the frame
to compute the N vector. This assumes that very little to no torsion around
the N vector happened, which we can reasonnably assert in an actual blood
vessel.

Change-Id: I84cf23e6487978444933e518ed9a70530bf33c27