Rewrite unit tests for raw index computation.
Rename test case.
Rewrite unit tests for stride computation.
Reimplement the computation of index, stride and iteration of coords.

The previous code manually unrolls loops, which makes very hard to maintain.
Simple loops are used instead to improve readability.
Fix `MultiArray.hpp` as a side-effect and add unit tests.
Merge branch 'maint-improve-locator-unit-tests' of github.com:DO-CV/DO-CV into maint-improve-locator-unit-tests

Conflicts:
	test/Core/test_Locator.cpp
Merge remote-tracking branch 'origin' into maint-improve-locator-unit-tests
Fix compilation errors on `Locator.hpp`.
Fix compilation errors for Subimage.hpp

TODO: add unit tests for this one.
Remove non portable include directives.
Reinstate public access to strides and sizes in RangeIteratorBase.
Merge remote-tracking branch 'origin' into maint-improve-locator-unit-tests
Disable all unproperly tested libraries.
Rename `RangeIteratorXXX` as `ArrayIterator` or `SubarrayIterator`.

The names were improper.
Rename `Locator.hpp` as `ArrayIterators.hpp`.
Rename include guards.
Update Doxygen docstrings.
Fix header inclusions.
Rename properly typedefs for ND-array iterators.
Fixed renaming issues in unit tests.