When a cluster is empty for KMeans, it's better to give it the point from another cluster j that is the furthest one from center j.
Implicit CUDA and OpenCL control for module definition added.

Feature allows to exclude CUDA or OpenCL optimizations at all even CUDA is used
on build. Exclusion of CUDA or OpenCL cut unwanted dependencies.
fix: use "cvAlloc" wrapper function for malloc.
Fixed an issue with weight assignment causing the resulting GMM weights to be unsorted in BackgroundSubtractorMOG2
fix: use "cvAlloc" wrapper function for malloc.
fixed  h / s ranges in histogram_calculation tutorial

literalinclude

literalinclude, dropped :lines:
OpenCV_MODULES_SUFFIX variable added to OpenCVConfig.cmake to enable custom module configurations.
Merge pull request #2458 from asmorkalov:android_cmake_opencv_modules_suffix
Merge pull request #2460 from berak:b_3598_24
minor doc fix
remove intel guard since the code is 2 times faster on AMD too
It's will be better
I have changed one sentence in tutorial, making it more understandable
Merge pull request #2026 from pemmanuelviel:giveFurthestPoint
Merge pull request #2456 from kurodash:pr_use_cvAlloc
Merge pull request #2488 from Nerei:minor_doc
Merge branch '2.4' of git://github.com/Itseez/opencv into mog2_weight_bugfix
Superres module enabled for Android. GPU samples build fixed for Android.
Fixed an issue with weight assignment causing the resulting GMM weights to be unsorted in the CUDA and OCL versions of BackgroundSubtractorMOG2
Merge pull request #2446 from asmorkalov:ocv_implicit_cuda_control