Initial commit for Conjugate Gradient method

Implementation is based on
http://www.cs.cmu.edu/~quake-papers/painless-conjugate-gradient.pdf

So far we only have basic interface and empty test. But it compiles at
least.
Refined interface for Conjugate Gradient

Some interface was refined (most notably, the method for returning
Hessian was removed and the method for getting gradient was added as
optional to base Solver::Function class) and basic code for
setters/getters was added. Now is the time for the real work on an
algorithm.
Finish implementing the Nonlinear Conjugate Gradient

Now everything is prepared for the pull request.
Minor fixes

Fix failed builds that opencv's buildbot has got.
Applied fix suggested in bug 3282 and shortened code
Added the copyright statements

Added the copyrights missing in all files that required so.
Add cv::logPolar, cv::linearPolar, and a python example
Added -l prefix to EXTRA_COMPONENTS when generating pkg-config file
Fix a bug in the er tree clean-up process (see discussion in https://github.com/Itseez/opencv/pull/1520). It's not necessary to walk the er tree in order to clean up the memory since it's possible to cleanup the regions in the stack just by iterating over the er_stack vector instead of walking the tree structure. This turns out to be safer because the tree structure of those regions may have been modified previously in er_save function.
changed foreach variable to match naming conventions and dropped intermediate variable, appending directly to the LIB_COMPONENTS list
Only append -l to lib entries with no path and no -l or -L of their own
shortened code to not repeat myself
added backslash
Change intrinsic camera matrix initialization

In the function cvInitIntrinsicParams2D the principal point for
normalized image coordinates is set to 0/0. This updates the function
to initialize the principal point at 0.5/0.5.
fixed wrong regex
Copied errorCovPre to errorCovPost. This allows the correct behaviour of the uncertainty to grow when there is missing data for each predict step.
1. Let btvRegWeights to be constant per `process` call.
2. Let Farneback to be the default optical flow method.
3. Fix a timing method bug for ocl path.
4. Remove useless finish operation in farneback
5. Refactor buffer usage.
regex doesnt need to match full length of input, so only trying to match the leading -[lL]
ocl: workaround for ProgramCache cleanup issue, use RAII to print kernel build error
ocl: fix FFT initialization