Creation of the RingProfile algorithm

just execution of class_maker

re #7776
Implementation of the RingProfile Algorithm

This commit adress the creation of the unit test and the
implementation of the algorithm as well.

re #7776
Add progress report to algorithm RingProfile

re #7776
Change the way to get the limit positions from workspace

Before, it tried to use the getBoundingBox from the instrument. But, if
there were no sample attached to the workspace, a segmentation fault was
triggered.

Now, it will try to get the limits of the position from the detectors, by
querying the first available detector and the last one, and from their position
guess the region defined by the instrument.

re #7776
Requirement Change for the output angles in RingProfile

Before, it was said that the angles in ringprofile would be the real angle
from the 3d space, but this cause the other mantidplot things to break, as
they are not expecting the horizontal axis to sank.

To avoid this, the requirement was changed to say that the degrees are always
relative to the ring itself, which means, it will always be:

angle = i*360/NumBins

re #7776
Merge remote-tracking branch 'origin/feature/7776_ringprofile'