turn on testing support in root binary directory
rewrite add_test command for accuracy tests:

* use new syntax introduced in CMake 2.8.0
* set OPENCV_TEST_DATA_PATH enviroment property
disable CTest target for opencv_test_viz:

opencv_test_viz creates windows and waits until user close them,
it is not appropriate for automatic testing
add CTest targets for sanity tests
determine test category (Public vs Extra) based on module location
Fixed highgui drawing test

- changed image comparison technique
- removed old assert statements
Fixes for QNX 6.6 Neitrino support.
Basic doxygen documentation support

- updated existing Doxyfile.in
- added corresponding cmake instructions
- added some specific files (layout, icon)
- clean existing doxygen warnings

Conflicts:
	CMakeLists.txt
	doc/CMakeLists.txt
	modules/core/include/opencv2/core.hpp
	modules/core/include/opencv2/core/base.hpp
	modules/core/include/opencv2/core/cuda.inl.hpp
	modules/core/include/opencv2/core/mat.hpp
	modules/core/include/opencv2/core/matx.hpp
	modules/core/include/opencv2/core/types.hpp
	modules/flann/include/opencv2/flann/lsh_table.h
	modules/imgproc/include/opencv2/imgproc.hpp
avoid pointer arithmetic on register memory in color conversion
increase epsilons for some tests, which functions use floating point arithm
minor fix for StereoCSBP data cost compute kernel and test
Merge pull request #3356 from jet47:ctest-support
Merge pull request #3366 from jet47:fix-gpu-cuda-7.0
Merge pull request #3363 from asmorkalov:qnx_support
Merge pull request #3362 from mshabunin:fix-drawing-24
fixed issue with malformed UTF-8 string;

ocl: Change static variable order in cl_context.cpp to avoid crashes during destruction

ContextImpl::currentContext contains a reference to one of the
DeviceInfoImpl objects from:

static std::vector<DeviceInfoImpl> global_devices;

ContextImpl::currentContext is destroyed in the destructor
for the statically defined object __module, and relies on its
DeviceInfoImpl reference to query some hardware features while
being destroyed.

This means that we need to ensure that the global_devices vector is
destroyed affter __module, otherwise ContextImpl::currentContext's
DeviceInfoImpl reference will no longer be valid when __module is
destroyed.

Since these variables are all confined to a single compilation unit,
they will be destruct from bottom to top, so we need to make sure
that __module is the bottom definition so it can be destroyed first.

iOS: fix crash from overrelease in UIImageToMat

viz: fixed memory leak, issue 3961

fix installation layout for debian packages:

Install symlinks to shared libraries as a part of development package,
not runtime package.

It is default behavior for debian packages.

Fix test name.

TIFF loader: Allocate large enough buffer when (bpp * ncn) > 8.

TIFF loader: Pass buffer size to read functions.

replace not ascii and not cyrillic symbols with '?';

add test for putText;

fix warning;

minor fixes;
Merge pull request #3336 from BKNio:putText_develop2
Merge pull request #3364 from mshabunin:doxygen-docs-24