ShellSort generic - with (3*k+1) stepping