Add a mode to docgen to run the code samples in the documentation.

This alleviates copying them elsewhere to ensure they are not broken.
Add 3d correlation based on matrix multiplication
Fix errors in the gradient definition
Small fixes
Add PyDecref(cols) when an error occurs
Rename conv_gemm to corr_gemm
Update flops method
Fix typos
Add optimization for the GpuCorr3dMM
Add GpuCorr3d optimization tests
improving the code for fixing ticket 1356
Fix subsampling in GpuCorr3dMM_gradWeigth
adding output of new profiling mechanism and modifying final message
Update doc
removed old comments and CUDA_LAUNCH_BLOCKING=1 from cpu profiling command
Added code to calculate new shape when '-1' is provided as a value for a dimension.
Fix test precision
Update doc
New opt: T.dot(A,B)[i] -> T.dot(A[i],B)
adding CPU and GPU used in profiling