fixing reset always keeping the last value, not the intended size 3... and above.
revert to the previous behaviour where the last element is preserved and
real `capacity` becomes `capacity + 1`. adjust methods accordingly.
and a slightly more verbose median funciton