Added Thin Prism Distortion Model

Only the code.
Thin prism distortion model added doc

Thin prism distortion model added to the
camera_calibration_and_3d_reconstruction.rst
Fixed undistort.cpp
distCoeffs0 cols to 12
Indentation ok
Indentation Ok
Added constants to gen_java.py
some improvements of existing sse3 optimization of bilateral filter in case of 8uc3. Now perf tests take 6120ms instead of previous 7250ms (1.18x speed-up)
additional improvements for 32f
Merge pull request #511 from aritzlc:master
Merge pull request #577 from ilya-lavrenov:BilateralFilter
move device layer functionality to separate module.
use opencv macro
automatically add CUDA to OpenCV module
move gpu implementation to softcascade module