OCL: Optimize OpenCL version of BFMatcher

Using vectors instead scalars, if data was aligned.

Report:
http://ocl.itseez.com/intel/export/perf/pr/3256/report/

check_regression=*OCL*BruteForceMatcher*
test_filter=*OCL*BruteForceMatcher*
test_modules=features2d
build_examples=OFF

I think it needs. We fill `s_query` and `s_train`, wait for all threads, calculate `result`, wait all threads calculated `results` and then refill `s_query` and `s_train` again.
If we remove this barrier, then some threads can write in `s_query` and `s_train`, before another threads ends calculation.
Am I wrong?