The test cases are ported from gpu module (masked version is still
missing).
Key point direction definition is synchronized with cv::SURF.
nonfree module dependency is added into ocl module's cmake file.
remove as much warnings as possible
use enum instead of MACRO for ocl.hpp
add command line parser in accuracy test and perf test
some bug fix for arthim functions