refactoring of convolution
cleaning
efficient boxblur