Merge pull request #33 from alexlib/ray_tracing_different_arguments

Ray tracing different arguments: Agreement on this has been reached ages ago. I'm merging this and closing PR #31. Still need to test #32.
fix of glass interface bug

for a long time the glass interface was suggested not to have zeros in
the x,y direction even if the glass was perfectly perpendicular to the
z (imaging) axis. This is only for the simple reason of getting NaN
when the vectors were getting zero length. This commit fixes this bug
by introducing the unit_vector function that does not create NaN for
unit_vectors of zero length. Instead it returns the original vector.
In addition, the old_ray_tracing call is depreciated and the
ray_tracing is now called without any translation to the old type.
additional trivial checks are added.
removed some unused lines
- fixed indentation replaced by 4 spaces
- moved unit_vector to lsqadj.{c,h}
- added test_unit_vector to check_lsqadj.c
- fixed the mistake in the expected values line
- removed s2 and reused the unit_vector from lsqadj.c to define direction unit vector
merged ray_tracing changes into epi
Merge branch 'ray_tracing' into epi

* ray_tracing:
  - removed s2 and reused the unit_vector from lsqadj.c to define direction unit vector
  - fixed the mistake in the expected values line
  - fixed indentation replaced by 4 spaces - moved unit_vector to lsqadj.{c,h} - added test_unit_vector to check_lsqadj.c
  removed some unused lines
  fix of glass interface bug

Conflicts:
	liboptv/src/ray_tracing.c
	liboptv/tests/check_ray_tracing.c
- simplified and shortened lsqadj.c after the comment of Yosef on ray_tracing pull request
- vector functions are now clear and argumented
- to be used in ray_tracing
- fixed the error in lsqadj.c of modu ( ) function
- added create_vector function for easier re-use of dot and modu functions in ray_tracing
- refactored ray_tracing using the dot, modu, and create_vector
Merge branch 'ray_tracing' into epi

* ray_tracing:
  - added create_vector function for easier re-use of dot and modu functions in ray_tracing - refactored ray_tracing using the dot, modu, and create_vector
  - fixed the error in lsqadj.c of modu ( ) function
  - simplified and shortened lsqadj.c after the comment of Yosef on ray_tracing pull request - vector functions are now clear and argumented - to be used in ray_tracing

Conflicts:
	liboptv/include/lsqadj.h
	liboptv/src/lsqadj.c