Add 3d correlation based on blas matrix multiplication 

we can infer the kernel size when pad is set to full (see line 1151 in  theano/sandbox/cuda/blas.py). I am not sure though why we can't do the same when pad is set to half.