implemented differences list and average_difference() in class IntervalResult
point before making big changes for bug fix
bug fixed: the bug was that when a new array for a new octave of intervals was created and the current_difference was the first item of the new array, last_difference pointed to the last item of the new array and not to the last item of the old array, now generate_intervals() generates the full range of intervals needed in one single array, the limit is calculated in relation of the last harmonic of the series
some refactoring, categorize() loops can be optimized